New MPF Device: Spinner!

Spinner
This PR introduces a new Device type to MPF: the Spinner
The Spinner device provides a convenient mechanism for aggregating rapid switch hits and tracking when a "batch" of hits begins and ends. The Spinner is active while switch hits are occurring, inactive when switch hits stop for a given time, and idle after being inactive for a certain time.

spinners:
  basic_spinner:
    switch: s_orbit_spinner
    active_ms: 500
  dual_spinner:
    switches: s_top_loop_left, s_top_loop_right
    switch_tags: left, right
    active_ms: 1200
    idle_ms: 2400

The consolidated events allow the game to start light and sound shows that play during the spin without having to time/overlap the shows against the inconsistent switch hits. The extra idle_ms time can be used for slides or widgets that should persist longer than the spin but still be removed after a timeout.
Basic Usage
The lifecycle:

Spinner sits, idle: true and active: false
The spinner switch is hit
i. The device switches to active: true and sets a timeout for active_ms duration
ii. The device posts spinneractive event
iii. The device posts spinnerhit event
Additional switch hits occur
i. The device resets the timeout for another active_ms duration
ii. The device posts spinnerhit event
Switch hits stop and the active delay timer expires
i. The device switches to active: false
ii. The device posts spinnerinactive event
iii. (Optional) If idle_ms is defined, the device sets a timeout for idle_ms duration
(Optional) No switch hits occur and the idle delay timer expires
i. The device posts spinneridle event
ii. The device switches to idle: true

If no idle_ms is defined, the spinner will immediately go to (and post) its idle state when it turns inactive. If it is idle and new switch hits occur, the spinner will re-activate and the cycle starts over.
Advanced Usage: Spinner Tags
In some situations it is useful to combine multiple spinner switches into a single spinner device—for example a series of inline spinners, or a horseshoe with a spinner at each entrance. If the designer wants to count all of the switch hits (either in aggregate or separately), but use a single active_ms and idle_ms for the group, the Spinner device supports that.
The Spinner config accepts multiple switches: (using the same pattern as Shots, either switch: or switches: can be defined as a single entry or list) and a hit to any switch will trigger the hit and active states. Optionally, the switch_tags: config can be defined that maps a tag to each switch. When defined, the Spinner will post both spinnerhit and spinner_hit events with the tag of whichever switch triggered the hit.

Question: I chose switch_tags because it's used in other configs, but would switch_labels or just labels be a better name?

Sample Event Log
In the below log you can see a Spinner named top_loop that is activated by an entrance on the left side and an exit on the right side. The switch hits are aggregated (spinner_top_loop_hit) and separated (spinner_top_loop_left_hit, spinner_top_loop_right_hit), and the Spinner deactivates and idles after it's active_ms: 1000 and idle_ms: 2000.
2021-06-15 13:53:43,950 : ======'spinner_top_loop_active'======
2021-06-15 13:53:43,950 : ======'spinner_top_loop_left_active'======
2021-06-15 13:53:43,950 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:43,950 : ======'spinner_top_loop_left_hit'======
2021-06-15 13:53:44,265 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:44,265 : ======'spinner_top_loop_left_hit'======
2021-06-15 13:53:44,583 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:44,583 : ======'spinner_top_loop_left_hit'======
2021-06-15 13:53:44,883 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:44,883 : ======'spinner_top_loop_left_hit'======
2021-06-15 13:53:45,216 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:45,216 : ======'spinner_top_loop_right_hit'======
2021-06-15 13:53:45,483 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:45,483 : ======'spinner_top_loop_right_hit'======
2021-06-15 13:53:45,700 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:45,700 : ======'spinner_top_loop_left_hit'======
2021-06-15 13:53:45,950 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:45,950 : ======'spinner_top_loop_right_hit'======
2021-06-15 13:53:46,166 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:46,166 : ======'spinner_top_loop_right_hit'======
2021-06-15 13:53:46,482 : ======'spinner_top_loop_hit'======
2021-06-15 13:53:46,482 : ======'spinner_top_loop_right_hit'======
2021-06-15 13:53:47,483 : ======'spinner_top_loop_inactive'======
2021-06-15 13:53:49,484 : ======'spinner_top_loop_idle'======

Putting this up as a draft, I'll work on tests but looking for feedback on the implementation. My first new Device type!

Looks good. I like it. Will review the code later.
One question to the events:
2021-06-15 13:53:43,950 : ======'spinner_top_loop_active'======
2021-06-15 13:53:43,950 : ======'spinner_top_loop_left_active'======

Should we add the number or spins here? I guess people want to show that on slides. Guess that could be spins in the current active phase.

Question: I chose switch_tags because it's used in other configs, but would switch_labels or just labels be a better name?

I actually got confused by tag because I thought this would be switch tags. So label sounds better for me. Or even something such as "group".

Thanks for the feedback! Changed switch_tags to labels, added the hits kwarg and an option reset_when_inactive to control whether the hit count resets on inactive state or idle state. Also, tests!


How to type check partial query results using structural typing

I have following code:
/* @flow */

// file a.js
type QueryResult = {|
    productsCount: number,
	totalPrice: number
|}

function a(): QueryResult {
	return { productsCount: 10, totalPrice: 100 };
}

// file b.js
type QueryResult2 = {|
    products: { id: string }[],
    productsCount: number,
	totalPrice: number
|}

function b(): QueryResult2 {
	return { products: [], productsCount: 10, totalPrice: 100 };
}

// file mutate.js
type QueryResult3 = {
    products?: { id: string }[],
    productsCount: number,
	totalPrice: number
}

function mutate(r: QueryResult3) {}

mutate(a());
mutate(b());

Resulting to
26:     products?: { id: string }[],
                   ^ undefined. This type is incompatible with
15:     products: { id: string }[],
                  ^ array type

Try flow code
We are using it like this because we have multiple queries and mutations (each in its own file) and each is returning it's own shape because we are not querying server for same data.
How can we typecheck those results? For example we have query for totalPrice and productsCount and then we have another query which returns same data + products, etc.

Isn't QueryResult3 just a union?
type QueryResult3 = QueryResult | QueryResult2;

Yes it is but in that case I need to import types from files a.js and b.js to be able to describe it as an union.
Is there any other way how to do this?

No, in general you can't compress a union to just one type
type A = {
  a: string,
  c: number
};

type B = {
  b: string,
  c: string
};

How can you express A | B without defining an actual union?
This would be plain wrong
type U = {
  a?: string,
  b?: string,
  c: number | string
};

You are right, I was looking at this code in a wrong way.


Example is incorrect

The explanation of the example provided for this cmdlet is incorrect.  The example shows the variable $UserCredential which is used to get credentials to connect to Exchange Online.  However, the explanation uses the wrong variable name (twice!):  "The first command gets the user credentials and stores them in the $Credential variable." and "The second command connects the current PowerShell session using the credentials in the $Credential." Please fix this to make it the variable name consistent.

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

ID: 28f6554b-4d67-06d3-7926-1b958653872f
Version Independent ID: 7a6a1737-afdf-dfd5-67f8-64aa6758ccc4
Content: Connect-ExchangeOnline (exchange)
Content Source: exchange/exchange-ps/exchange/powershell-v2-module/Connect-ExchangeOnline.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@officedocsbot assign @yogkumgit

@damianscoles Thank you for your feedback. We have made changes to the doc via PR https://github.com/MicrosoftDocs/office-docs-powershell/pull/4426
Thanks
Sri

@msbemba  Thank you very much for the contribution and updating the documentation with PR. @damianscoles Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


feat(ci): add self hosted runner for long tests

Motivation
We've been creating several jobs to workaround GitHub's 6 hour time limit for hosted runners, but this approach has been hard to maintain, created several edge cases (issues) with SSH connections and made the workflow way too verbose.
Fixes: #5572
Specifications

Uses self-hosted runners, which were deployed using ACR: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller

Complex Code or Requirements

We need to confirm the regex in the test-result job works for all tests

Solution

Use self-hosted runner instead of GitHub Hosted runner
Remove all intermediate jobs which were meant to extend the run of the test over the 6 hours limit
Move the startup validation and test run steps into a single job
Combine setup and launch jobs in a single job (2 jobs total)

Review

This should execute over 6 hours for a Zebra and LWD sync
The sync should end successfully

Reviewer Checklist

[ ] Will the PR name make sense to users?

[ ] Does it need extra CHANGELOG info? (new features, breaking changes, large changes)

[ ] Are the PR labels correct?
[ ] Does the code do what the ticket and PR says?

[ ] Does it change concurrent code, unsafe code, or consensus rules?

[ ] How do you know it works? Does it have tests?

Follow Up Work

Running test: https://github.com/ZcashFoundation/zebra/actions/runs/6145420016


Add warnings to unused signal operator results

One of the most common sources of confusion with developers that are new to the concepts of FRP is that subscriptions are required to drive values through signal operators. New developers frequently spend a long time trying to figure out why code such as:
[signal logAll];

is not performing any logging side-effects. To help with this confusion, I’ve added unused result warnings to side-effectless signal operators to help raise a warning to newcomers that operators are side-effectless.
This change will also help with catching typos that would otherwise compile without warning, such as forgetting to type return before a signal chain when you are attempting to write an early return in a method.

Has some conflicts that need to be resolved.
It might be nice to added a #define like NS_UNAVAILABLE to improve readability.


Some improvements in the source code.

Here I add all commits while working on #12 which can be easily included into master since it only depend on Hugo 0.16.
@gcushen It might be good to wait with the merge until I have finished working on #12. However, when you will find time, it will be great when you already review my changes and make comments :smile:

Thanks @kulla . Here's some feedback based on your PR so far:
7b87949 - looks good.
388f005 - There was a reason why I defined absolute URLs and not relative URLs. I will try to look at my notes and see if the reason is still valid. I agree that relative URLs can be more convenient in some cases.
ff3fc42 - I suppose it can simplify the code a bit and ensure that there is always an RSS feed available from every page.
8f5dd46 - can you give some more details about why this is in the pull request?

About 8f5dd46: I test my changes by running hugo server --theme="../../" inside exampleSite. In order to test custom_css we need to specify at least one site specific CSS stylesheet. I also plan to integrate a travis build for this theme. The build script for travis would test whether the site in exampleSite can be build with the target versions of hugo. In order to test all of our code we need to enable all features in exampleSite. This also has the advantage that it shows to new users how to use the custom_css feature. Therefore I added a comment explaining the reason for having custom_css.

For https://github.com/gcushen/hugo-academic/commit/388f005baaf0783abd9c9c430648ca8dbc6d9e76: There is also absURL which can be used instead of relURL. However, note that the configuration
relativeURLs = true

does not work on absolute URLs. Imagine someone wants to create a website with only relative URLs so that viewed from any place where the site is stored. There is also the global configuration
canonifyurls = true
to canonicalize all URLs (see http://gohugo.io/extras/urls/#canonicalization ).

RE 8f5dd46: this is not a good idea as the example site is used as the starting point for new sites, so it should not enable advanced features by default (CSS programming knowledge is required), and also linking in extra CSS files increases the website load time.
This project is just a theme, so there is little need for testing with continuous integration, but if you did want to explicitly make tests, it would be better to make a script to setup the testing environment/config rather than force all users to start their new site with a testing config.
On a separate note, ideally the CSS files would be concatenated and minified but Hugo can't do this and I don't want to require dependencies.
I have been planning to integrate a continuous integration service for the purpose of automating deployments of  the documentation/example website based on commits to master. Hopefully I'll get a chance to do this soon.

Okay, I removed the commits related to mystyle.css.

@gcushen What do you think about https://github.com/gcushen/hugo-academic/pull/33/commits/39bc41768b238e3d7f3d0a215472ff3ea25e93e0? Do you think it is a good idea to move information from config.toml into the section where they are defined? This will also make implementing #12 easier...

RE 39bc417 - it's very interesting that you thought about this because one of the main changes I started making a while ago is to move all of the home sections to separate Markdown files, including the dynamic ones (e.g. publication list). This will enable ordering home page sections using weight parameters; be more consistent with the other types of pages; and prepare the home page for localisation, like you stated.
I will try to find some time to finish my implementation of the home pages this weekend and commit it to master. If I don't have time to finish it soon, I will give you the details to finish this feature.
Although markdownify is not neccessarily needed in https://github.com/gcushen/hugo-academic/blob/master/layouts/partials/home_biography.html#L40, it can be useful if a user wants to use some basic formatting such as italics (or linking) in their interests.

@gcushen good to see that we have the same ideas :smile: I was away for a week but can continue to work on this project the following week. Can you publish your already finished code in a separate branch so that I can help you finishing this task?
I also wonder whether this PR should be split into different smaller PRs so that some commits (which you already approved) can be merged into master since the chances of merge conflicts increases over time and with the number of different branches. What is your opinion?

@kulla Good to hear from you :smile: I have just committed all my work to master, including refactoring homepage sections to widgets in content/home/. Feel free to read the commit messages and ask me any questions.
Based on your previous feedback, I have reduced the HTML/CSS indentation to 2 spaces so that file comparison and editor tiling work better. Google also recommend 2 space indentation for HTML/CSS, so seems like a good decision, although hope it's not too much work for you to rebase to edit your changes to use 2 space indentation.
RE PRs: yes, feel free to split your PR into smaller ones to avoid the chance of merge conflicts. I don't plan to make any more major changes myself in the next few weeks.

@gcushen fyi: I just got a new task to do and thus it might take time until I can work on this project again...

@kulla thank you very much for your feedback and contributions, and good luck with your new projects :smile:
Since you are busy on other projects now, I might try to rebase some of this pull request myself.
If Hugo 0.17 is released before you can finish the multilingual feature, then I might also try to rebase and complete your multilingual branch after 0.17 is released.

@gcushen Okay I managed to take some time off :smile: and started to rebase and split this PR... This PR only contains those commits which still need to be rebased. You find the other commits in the new created PRs...

Okay, I successfully split and rebased this PR into several different ones :smile: Thus, this PR can be closed (we should continue the discussion in the other PRs...)


Link HC-06 with GPIO pins of orange pi

After successfully connecting TTGO TCall, link watcher bot with orange pi, it should read incomming data from HC-06 Bluetooth module, after receiving that data from watcher it should fetch usefull data from that input.

no need to implement this feature as #7 is a best alternative of it.


Fix #3413: Include base directory to watched sources

If sourcesInBase is true, we must also watch sources in the base
directory.
This doesn't completely fix #3413, as the same problem would happen if sourcesInBase is false and no source directories exist. The new watch service expects to watch existing directories. If no such directories are given, it throws an exception because it will never detect anything.
I think that the second part of the fix should be to make WatchState throw a less scary-looking exception if it cannot find anything to watch. That'd be different from 0.13. @dwijnand @eed3si9n WDYT?

I think that the second part of the fix should be to make WatchState throw a less scary-looking exception if it cannot find anything to watch. That'd be different from 0.13.

Sounds good.

I wonder whether this was a good idea unless sourcesInBase has its default changed. As seen in the BuildInfo project, this means that SBT now wants to watch the base directory of any project that uses the default settings for changes—which is a major increase in the scope of what's watched far beyond what's actually required to detect a change in a root .scala or .java file.

The base directory by default is included as a source directory, it's entirely expected that sources could be there. I don't know how many people know or make use of this fact however.


Add state layers and text to maps

I already have countries, can I pull in the state boundaries and include labels for:

[x] FL
[x] USVI
[x] PR
[x] Hawaii
[x] Guam
[x] American Samoa

labels added using ax.text()
See commit:

https://github.com/MathewBiddle/bio_ice/commit/7cbcac07de113de9c2bc5981f9fe1bff48037928

Downloaded a local copy of state boundaries shapefile from census.gov: https://www.census.gov/geographies/mapping-files/time-series/geo/carto-boundary-file.html


Merge with default config

Why:

if you set authtoken using ngrok config add-authtoken and you
also set config options in application properites
we ignore the authtoken from the default config.

This change addreses the need by:

use ngrok merge config feature by passing default config location
config on the command line (iff the default config exists)

https://ngrok.com/docs/agent/config/#config-file-merging is the docs I used to do this.


too much floaters

https://github.com/SuLvXiangXin/zipnerf-pytorch/assets/20927755/b3db06b4-9aa2-4cd3-ad35-101555d14e75
Awesome work！
there is always too much floaters in rendered img. what should I do when I train my data? Thank you!

https://github.com/SuLvXiangXin/zipnerf-pytorch/assets/20927755/27a4cda7-da76-420b-aaf6-2c82baf5a52f

I looked at the original zipnerf and the method works both indoors and outdoors, so I didn't exclude light, but a lot of floaters appeared


Widget

I really like having a widget with some of my notes (e.g. shopping list, todo list) on the home screen, so I don't forget. Would be nice if this app had one

Pretty unlikely since flutter itself does not have the option to implement those currently.
Related: https://github.com/flutter/flutter/issues/26134

there could be a way of implementing a flutterview inside a normal widget, but i'll have to look better into it

I would vote for such functionality (in case it's possible) as well!

There is now similar functionality using app shortcuts, gonna eventually implement a widget if possible


cmd error of aws amplify  #1

while am trying to run :
npm install aws-amplify aws-amplify-react
in node js server i am getting an error like this
npm WARN deprecated<EMAIL_ADDRESS>This version of 'buffer' is out-of-date. You must update to v4.9.2 or newer

Suolution to this problem
either update the buffer.js in the npm library
or
delete the previous buffer and simply reinstall it
it will work by the command
npm i install buffer-js


Setup Kubernetes Cluster on Linux using Kubeadm

Kubernetes
Kubernetes is a free and open-source orchestrator for containerized application deployment. Google created it in 2014 as a way to run scalable, dependable systems in containers using application-oriented APIs. It has since evolved to become one of the world's biggest and most popular open-source projects. In every public cloud, Kubernetes is currently the standard API for creating cloud-native apps.
Kubeadm
Kubeadm is used to build up Kubernetes clusters that pass the Kubernetes conformity tests or to create a minimum viable Kubernetes cluster that follows best practices. Other cluster lifecycle functions supported by Kubeadm include cluster updates and bootstrap tokens. Kubeadm is thus a useful tool for getting started with Kubernetes, orchestrating clusters, and testing apps, as well as a building element for other ecosystems.

Hi @Bettkip
Thanks for submitting your suggestion. After a quick google search, we found that your article has been widely covered over the internet. There are digital ocean ads too about the same. Therefore, we cannot move forward with your article. We are looking for more original content that isn't saturated on the internet.
You are more than welcome to try out other topics of interest.

Take note that your suggestion was missing several sections that help us get a better understanding of your topic. Please go through approved topics and see how they utilise the template.


Colors not formatting correctly

When using § to format colors with this plugin in bungeecord it works https://www.spigotmc.org/resources/bungeealiases.4107/, while in waterfall it does not. It shows up as question marks http://puu.sh/o60zV/10ab3c1512.png

Probably a plugin issue

He says it works on bungeecord.

Your configuration probably isn't being saved in the default system charset (most platforms aside from Windows likes UTF-8), hence the question mark.

@CullanP have you tried that?

@Techcable Trying it now.


encodeAppendSequencerBatch doesn't include method ID

encodeAppendSequencerBatch correctly encodes everything except the method ID. Clients of the library end up having to manually add the method ID everywhere. I think it's easier to return with the method ID and allow clients to slice of the first four bytes if they want.
https://github.com/ethereum-optimism/core-utils/blob/98ef6e0f6b4b237c894b95b7e00153f889819e80/src/coders/sequencer-batch.ts#L40-L66
Fix here would be to modify the return value to start with:
`ethers.utils.id('appendSequencerBatch()').slice(0, 10)` // just want 0x + first four bytes = 10 total characters

could use a review on my PR

This issue has also been patched in #8
https://github.com/ethereum-optimism/core-utils/blob/8c5a674acb902b8f8c288104308272970ae11431/src/coders/sequencer-batch.ts#L128-L146

Thanks for the help @platocrat !


Commission to advertise StandForUkraine

I would like to know if I can earn some commission if I advertise this banner on my project or website...
I have a website with good traffic, if is there a way I can put affiliate link, or if someone is selling merchandise I can do affiliation..
Thanks in advance.

You earn moral commission if you do. I don't think there's a monetary one.

I wouldn't bother interacting. The OP just posted a bit of ruscist propaganda on a neighboring issue: https://github.com/vshymanskyy/StandWithUkraine/issues/181#issuecomment-1366024485. It's spam at best, so I'm going to label the issue based on the overall behavior on the tracker. No excuses for speading this kind of terrorism here.


[INFRA] license-eye support pre-commit hook

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
After finish coding, always need to do license check on new files before push. So hope it can be done when commit.
Add one hook in pre-commit could be a solution.
Use case
place license-eye hook in .pre-commit-config.yaml, like
- repo: https://github.com/apache/skywalking-eyes
  rev: v0.2.0
  hooks:
    - id: license-eye-header-check
    - id: license-eye-header-fix

precommit install-hooks then every new file will be checked and fixed before commit.
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@kwanhur how will you implement this feature?

Add .pre-commit-hooks.yaml into repo skywalking-eyes, its content like:
-   id: license-eye-header-check
    name: license-eye-header-check
    description: "Checks the files' license header"
    entry: license-eye header check
    language: golang
-   id: license-eye-header-fix
    name: license-eye-header-fix
    description: "Fixes the files' license header"
    entry: license-eye header fix
    language: golang

Similar configs for license dependency.

That's not what I expect, skywalking-eyes itself is a tool, we can add .pre-commit-hooks.yaml in this repo, but I expect this is something our users can also use in their repos, for example, adding a command to automatically generate these files in users repo, e.g. license-eye hook init

If on this way, local hooks maybe the choice, but it'll loss autoupdate feature.

In my opinion there is no way to have the autoupdate feature (or non-local hooks), license-eye finally will be shipped as a executable binary, how could that .pre-commit-hooks.yaml take effect?

According to local .pre-commit-config.yaml, pre-commit installs the binary with specified repo and revision, and then local hooks work on repo's .pre-commit-hooks.yaml base on hook id.
So the id in .pre-commit-hooks.yaml is important, every hook takes effect through its entry. entry means how to work on those matched files.

I place license-eye hooks as the below, it works well.
- repo: local
  hooks:
    - id: license-header-check
      name: license header check
      entry: license-eye header check
      language: system
      types: [file]
    - id: license-header-fix
      name: license header fix
      entry: license-eye header fix
      language: system
      types: [file]

Should we close this?

If there's no need integrating .pre-commit-config.yaml into skywalking-eyes repo, close it.

I think we don't need to do that. pre-commmit hook is very personal preference, we don't want to set a bar for it.


Inconsistencies between Alonzo formal specification and implementation of UTXOS/UTXO rules

There are a number of potential minor inconsistencies/mistakes related to the (Alonzo) UTXOS.hs and UTXO.hs files and the corresponding contents of the Alonzo formal spec.
UTXOS.hs

Figure 9 ("State update rules") of the formal spec reads depositChange := deposits pp poolParams (txcerts txb)) - refunded but I think this should use the totalDeposits function defined in the Shelley ledger spec and which is used in the implementation; that is, it should read totalDeposits pp poolParams....
(Figure 9) It might be worth mentioning that the formal spec now names the state's deposited field deposits whereas the implementation is consistent with the deposited naming that was also used in the Shelley era. Intentional change?
(Figure 9) In the PPUP transition the signal should read txup txb not txup tx. This minor issue, accessing fields which are contained in transaction body by using an accessor on the transaction itself, is prevalent throughout the specification. For example, collateral tx and collateral txb are both used in Figure 10.

UTXO.hs

Figure 17 ("Value Size") states the function type of utxoEntrySize to be TxOut -> MemoryEstimate whereas the implementation is utxoEntrySize :: TxOut -> Integer. The Alonzo spec doesn't define the MemoryEstimate type but the ShelleyMA spec defines it as a Natural.
In Figure 4 ("Functions related to fees and collateral") the check which ensures the collateral provided covers the collateral percentage of the txfee achieves this by dividing the (txfee * collateralPercent) product on the RHS of the inequality by 100 and taking the quotient, whereas the implementation multiplies the LHS by 100 resulting in a slightly different (more precise?) check.
In Figure 10 ("UTxO inference rules") a \to arrow is used between a \in Addr_{bootstrap} \to bootstrapAttrsSize a \leq 64 but this should maybe be a ~\Rightarrow~ (for "implies")?
Figure 10 checks that txnetworkid txb == NetworkId but the txnetworkid field of the transaction body is optional and the implementation allows for txnetworkid to equal nothing. Maybe Figure 10 should say something along the lines of "If txnetworkid txb is not equal to nothing then txnetworkid txb must equal NetworkId"?
The recently renamed (in the implementation) wppHash and hashWitnessPPData will need to also be renamed in the formal spec.

Let me know if I misunderstood anything, thanks!

UTXOS:

Fixed in #2448
We inherited that naming from the shelley spec, and it's used consistently among the specs I think. @JaredCorduan ?
We'll soon switch to a different way of doing accessors in the formal specs, which will get rid of this issue entirely

UTXO:

We specifically wrote this with the intention for the code to use a newtype. Should we spin this off into a new issue for the code @JaredCorduan ?
The rest should be fixed in #2448

UTXOS 2. Looks like deposited was used in the Shelley formal spec (Figure 16) but was then changed to deposits in the ShelleyMA (Figure 4) and Alonzo (Figure 9) formal specs. The implementation of both Shelley and Alonzo uses deposited, but the ShelleyMA implementation uses deposits. Rest LGTM


A change log would be helpful

Is there a change log?
If not, one would be helpful. Periodically we get updates via NuGet, but there is no indication about what was fixed or changed. We can certainly diff the code, but that's time consuming as you could imagine.

It pays to do little search:
https://github.com/unitycontainer/unity/releases
https://github.com/unitycontainer/abstractions/releases
https://github.com/unitycontainer/container/releases
If this is not enough you could contribute more comprehensive release notes.

Fair enough. Often I see open source with dedicated websites or links from the readme.md. I tried several web searches and didn't turn up the notes. But thank you for the links.

This is ongoing epic struggle detailed in this thread. Unfortunately I just don't have bandwidth to do it all at once.


Consider Detecting Incorrectly Using StreamBridge to Send to an Input Binding

See https://stackoverflow.com/questions/74455728/streambridge-not-sending-acknowledgment-header/74478793#74478793
This is not the first time I have seen users being confused by this.
Perhaps the framework could reject such actions, at least in 4.0?

The problem is with SB you can send to non-existing binding at which point the new binding will be created. Further more, we are not enforcing name-in/out-0 scheme. You can do SB.send("foo", "blah") and it will work since foo binding will be created. SO i can not look at binding name to determine if it is IN or OUT binding. However, it appears that in this case it is the existing binding and that could be checked.

RIght; a dynamically creating binding will always be an output binding; the issue here is if we resolve a channel that is actually a predefined input channel.

Hi @garyrussell I have posted one of my application scenario at https://stackoverflow.com/questions/78510903/using-stream-bridge-to-send-message-from-one-onsumer-to-another-consumer

Hello @garyrussell ,
In stackoverflow the question attached initially you mentioned
"When using a KafkaTemplate instead it is, of course, going via Kafka; that's why you are seeing different behavior.
You need an output binding with inbound-stream as its destination."
I have same scenario described https://stackoverflow.com/questions/78510903/using-stream-bridge-to-send-message-from-one-consumer-to-another-consumer
where I want to send message to another exchange within the same application.


Add information about HTML form submit

-when to use HTTP GET
-default for blank attribute

[X] I have read freeCodeCamp's contribution guidelines.
[X] My pull request has a descriptive title (not a vague title like Update index.md)
[X] My pull request targets the master branch of freeCodeCamp.
[X] None of my changes are plagiarized from another source without proper attribution.
[X] My article does not contain shortened URLs or affiliate links.

Looks good @felhe, thanks for contributing to freeCodeCamp!


HBASE-26349 Revert and improve recent change to IntegrationTestLoadCommonCrawl

Using BufferedMutator was not a good idea because we assign client timestamps, and the store loop is fast enough that on rare occasion two temporally adjacent URLs in the set of WARCs are equivalent and the timestamp does not advance, leading later to a rare false positive CORRUPT finding.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 33s
master passed

+1 :green_heart:
compile
0m 41s
master passed

+1 :green_heart:
checkstyle
0m 18s
master passed

+1 :green_heart:
spotbugs
0m 36s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
4m 10s
the patch passed

+1 :green_heart:
compile
0m 39s
the patch passed

-0 :warning:
javac
0m 39s
hbase-it generated 4 new + 99 unchanged - 4 fixed = 103 total (was 103)

+1 :green_heart:
checkstyle
0m 16s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
21m 17s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1 3.3.0.

+1 :green_heart:
spotbugs
0m 45s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 13s
The patch does not generate ASF License warnings.

43m  8s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3744/4/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3744

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile

uname
Linux be58d99ca1d0 4.15.0-147-generic #151-Ubuntu SMP Fri Jun 18 19:21:19 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 26ab9d0e0b

Default Java
AdoptOpenJDK-1.8.0_282-b08

javac
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3744/4/artifact/yetus-general-check/output/diff-compile-javac-hbase-it.txt

Max. process+thread count
86 (vs. ulimit of 30000)

modules
C: hbase-it U: hbase-it

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3744/4/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


docs: Add user guide for see if user is here or away feature.

Automated message from Dropbox CLA bot
@andrewallen00, it looks like you've already signed the Dropbox CLA. Thanks!

@andrewallen00, good effort over all. Can you please looks at the feedback? Thanks.

@andrewallen00 This looks great!  I just have one final request before merging.  Can you add a few headings such as "Color Indicators" to break up the document a bit?

@showell I added some headers, anything else I should improve? Thanks!

@andrewallen00, this looks great, thanks for the quick touch-ups!
This is ready to merge, pending Travis.

@showell no problem! thanks!

@andrewallen00 did you intend to close this?  It doesn't seem to have been merged...

@timabbott that was accidental

This was added via #2823.

Correction: The doc was created through PR #3146; regardless, thanks for working on this!


Running date command outputs unwanted chars

Example:
date --date=2011/09/01 +%s

Output:
27m1314860400

The "27m" is not part of the output of the date command.

this issue has been getting on my nerves the entire time i'm been using OMZ. @robbyrussell any idea?
btw this issue might be related: #57 (and here's another 'bogus output' issue that's probably not related #770)

I am still having this issue... runnning  date +%s gives me
27m<PHONE_NUMBER>

OS / Distro: Arch Linux
Latest ohmyzsh update?: Yes
ZSH Version: 5.8
Terminal emulator: urxvt

What's the value of $TERM?

@mcornella Thanks for your reply. I am using the urxvt-unicode terminal, echo $TERM produces
rxvt-unicode
I tried setting DISABLE_AUTO_TITLE="true". But it does not work for me.  I still get the 27m chars when running date +%s in the urxvt-unicode terminal.
However, when I switch to the xterm terminal, running date +%s gives me
<PHONE_NUMBER>
(Note that there is a space char in front of the timestamp.)
I am happy to provide other information if you need.

Maybe you have other preexec hooks that do this wrong. What does which $preexec_functions return?

Running which $preexec_functions returns:
omz_termsupport_preexec () {
	[[ "${DISABLE_AUTO_TITLE:-}" == true ]] && return
	emulate -L zsh
	setopt extended_glob
	local -a cmdargs
	cmdargs=("${(z)2}")
	if [[ "${cmdargs[1]}" = fg ]]
	then
		local job_id jobspec="${cmdargs[2]#%}"
		case "$jobspec" in
			(<->) job_id=${jobspec}  ;;
			("" | % | +) job_id=${(k)jobstates[(r)*:+:*]}  ;;
			(-) job_id=${(k)jobstates[(r)*:-:*]}  ;;
			([?]*) job_id=${(k)jobtexts[(r)*${(Q)jobspec}*]}  ;;
			(*) job_id=${(k)jobtexts[(r)${(Q)jobspec}*]}  ;;
		esac
		if [[ -n "${jobtexts[$job_id]}" ]]
		then
			1="${jobtexts[$job_id]}"
			2="${jobtexts[$job_id]}"
		fi
	fi
	local CMD=${1[(wr)^(*=*|sudo|ssh|mosh|rake|-*)]:gs/%/%%}
	local LINE="${2:gs/%/%%}"
	title '$CMD' '%100>...>$LINE%<<'
}

I tried disabling all the oh-my-zsh plugins and the problem still exists...

@mcornella I just overwrite my .zshrc file by cp ~/.oh-my-zsh/templates/zshrc.zsh-template to ~/.zshrc. The problem disappears!
Maybe there is something wrong in my old .zshrc. I will look into the issue and try to find the culprit. Thanks!

Run typeset -f -t omz_termsupport_preexec and then run date +%s, and post the output of the terminal.

@mcornella Thank you very much! I found the culprit!
It was caused by the following functions that I added (to disable the command echo back in xterm) very long time ago..
I just removed the functions and everything works normal now..
function precmd() {
if [[ $TERM != linux ]]; then
    print -Pn "\e]2;%~\a"
fi
}

preexec () {
if [[ $TERM != linux ]]; then
print -Pn "\e]2;%~ :  $1\a"
fi
}


move metric.format.tags to top

closes #490

This change is not backwards compatible.
Please account for this change if you defined custom tags and are upgrading from a version before AppScope 0.7.5 to AppScope 0.7.5 or later.
For anyone who used custom-defined tags before AppScope 0.7.5, the correct location of tags: in scope.yml was here:
metric:
  enable: true                      # true, false
  format:
    type : statsd                   # statsd, ndjson
    #statsdprefix : 'cribl.scope'    # prepends each statsd metric
    statsdmaxlen : 512              # max size of a formatted statsd string
    verbosity : 4                   # 0-9 (0 is least verbose, 9 is most)
    tags:
      user: $USER
      feeling: elation
  transport:                        # defines how scope output is sent
    type: udp                       # udp, tcp, unix, file, syslog
...

In AppScope 0.7.5 and later, the correct location of tags: has moved to become a root element (peer of metric:) like so:
metric:
  enable: true                      # true, false
  format:
    type : statsd                   # statsd, ndjson
    #statsdprefix : 'cribl.scope'    # prepends each statsd metric
    statsdmaxlen : 512              # max size of a formatted statsd string
    verbosity : 4                   # 0-9 (0 is least verbose, 9 is most)
  transport:                        # defines how scope output is sent
    type: udp                       # udp, tcp, unix, file, syslog

tags:
  user: $USER
  feeling: elation
...


change bytesize topic

@netlify /events/2024/bytesize_resolve_merge_conflics

Hello @FranBonath @mashehu , I committed to do this but not very sure about the format :D Is it possible to direct me to similar bytesize talk?

Merging this by bypassing branch protection, so we have it up on the website asap.


Version solving failed for xml 3.4.0 and 3.5.0

Hi,
I am getting version solving failed when trying to install the package version 3.4.0 or 3.5.0,
> flutter packages get
> Running "flutter packages get"..
> The current Dart SDK version is 2.3.0-dev.0.5.flutter-a1668566e5.
>
>
>
> Because wp_client depends on xml >=3.5.0 which requires SDK version >=2.3.0 <3.0.0, version solving failed.
> pub get failed (1)
> exit code 1

Running flutter -version:
Flutter 1.5.4-hotfix.2 • channel stable • https://github.com/flutter/flutter.git Framework • revision 7a4c33425d (5 weeks ago) • 2019-04-29 11:05:24 -0700 Engine • revision 52c7a1e849 Tools • Dart 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)
My pubspec.yaml
environment:   sdk: ">=2.2.2 <3.0.0"

If I don't misread the error message, then this is a problem of the wp_client library. It should not depend on xml 3.5, if it wants to be compatible with Flutter. xml 3.4.1 should be compatible with the current Flutter releases.

If I don't misread the error message, then this is a problem of the wp_client library. It should not depend on xml 3.5, if it wants to be compatible with Flutter. xml 3.4.1 should be compatible with the current Flutter releases.

wp_client is actually my app name,
I tested again and xml 3.4.0 and xml 3.4.1 does work, only xml 3.5.0 gives the error although my dart tools  meets the requirements The current Dart SDK version is 2.3.0-dev.0.5.flutter-a1668566e5.

I don't think you meet the requirement for xml 3.5.0, because 2.3.0-dev.0.5.flutter-a1668566e5 < 2.3.0. Glad to hear that xml 3.4 works for you.


NPE in a custom reactive web filter

Hello,
with the current master, i get a NPE when im using a custom reactive web filter. In the tracer the current span is always null.
I try to add a custom key to the response. Here is the example:
https://github.com/SirWayne/reproduce-sleuth-issue with test case

Yeah it's related to https://github.com/spring-cloud/spring-cloud-sleuth/issues/1143


show bonding / unbonding in tx history

what will be required to implement this?
@mappum @nylira @faboweb ?

dupe of #355


deployed marketplace smart contract address and ABI

where do I find the deployed marketplace smart contract address and ABI?

When you deployed a smart contract from remix or something else, you can get the deployed address from remix as below image.

and also, you can get ABI from compile tab of remix as below.

There is a some rule regarding smart contract address on every nft market,
for example, at OpenSea, you can find a smart contract from url address.
take a look at below link:
https://docs.opensea.io/docs/3-viewing-your-items-on-opensea


Cycle Detection in Linked List in Java

Information about Algorithm

This algorith detects if the cycle present in Linked List or not.
Have you read the Contributing.md and Code of conduct

[X] Yes
[ ] No

Other context

This is a Leetcode problem and asked in most of the MNC's.

Please added this issue to the hacktoberfest. I am working the code.


Fix build failure on OSX/macOS/BSD

macOS and BSDs have a slightly different timespec you see.

Heh, whoops, I actually fixed this already, in 5d25576. Fixed p much the same way you did, except I just did it directly in watch.c, and only bothered with st_mtim (since that's the only one I'm currently using).

Thanks for taking care of it!


OAuth2: don't parse error as JSON

Fixes #7464
Let's not parse the error as the JSON documented in the RFC. Instead, just treat the whole response body as the exception message. One can parse it from there if needed, but I think it's usually not needed.

I'm not sure it's need to go that far, why not cover the use-case from the linked issue and throw the catcheable error containing the response body the user can parse as a fallback solution?

If there's an OAuth error there's not much you can programmatically do: log the error, check it later, fix the bug, if any, or wait until the server fixes the problem, etc. You won't programmatically fix the error by checking the response body. That's why I think that it's better we don't do anything with the body. Just include it as an exception message.
If you really want to parse it, just do JSON.parse(...) or map it to a model of your own.

We could consider keeping the #error and #error_description methods but let them lazily parse the JSON on demand.

@straight-shoota We could, but this way users can parse it if they want it so it's a bit faster too (no need to parse it if you don't want to use it)

I'm open to suggestions. Let's think about the API and implementation for this (though I really think that parsing this is unnecessary in most of the cases and if you really want to parse it you can use JSON.parse(ex.message).

I'm not very familiar with the OAuth2 API.
Actually, it's probably okay to merge this and think about alternatives when such a feature is requested (if ever).


doc IActionResultExecutor

 IActionResultExecutor

blog: Using MVC result executors in ASP.NET Core middleware
GitHub comments

@mjrousos are you interested in providing a first draft of this?

A related issue when I tried to use IActionResultExecutor<NotFoundResult>: https://stackoverflow.com/q/62422481/3427520
I don't know where's the the service containing it that should be added in Startup.ConfigureServices.

I found out
public static Task WriteActionResult(HttpContext context, NotFoundResult result)
{
       context.Response.StatusCode = result.StatusCode;
       return context.Response.Body.FlushAsync();
}

For StatusCodeResult, we shouldn't query a IActionResultExecutor but write to Response directly.
Learned from WebApiContrib:
https://github.com/WebApiContrib/WebAPIContrib.Core/blob/cfb6deeb0b2c132362597b2362232b5592f1ca1a/src/WebApiContrib.Core/Results/HttpContextExtensions.cs#L37


[Feature] Adding Progess Bar

Description
Adding Progress bar as in new component and Adding a animated progress bar.
Screenshots

Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[X] I am a GSSOC'24 contributor.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

Do you want to add this component in Loaders Category @jaydeep099

@Rakesh9100 I have no problem but if you see as loader perspective but i personally think it should have different component that is progress bar or we can rename to loader and progress bar. At last i don't any problem to add in loader category.

@Rakesh9100 assign me I have no problem in adding loader category

Provide me the video of your component for clarity, is this component a loader or not @jaydeep099

https://github.com/user-attachments/assets/bc9b149d-805d-4603-bd0d-61b699f7928e
@Rakesh9100 Please Check it

Provide me the proper name of your loader, which includes the suffix Loader @jaydeep099

@Rakesh9100 it is progress loader and suffix is Animated progress loader

Go ahead @jaydeep099


Make closing polls only available to admins

I think that polls should have an option to be only closed by administrators. I think leaving the default option is no problem, but I think that adding admin perms as an optional toggle would be nice.

Do you mean only admins, not even the poll creator? Or including the poll creator?
I can see this being an option with a set of choices for minimum required privileges needed to close a poll, but I don't really see what it would be useful for. Could you give me a use case/why someone might need to set it to admin-only?

Sorry for the last response, been meaning to reply to this.
With my server, everyone has base moderator permissions. I don't expect you to make an exception just for me, however; I think that sometimes, having a mode where only the admin can delete the poll could be useful. If perhaps an admin is posting an important poll, a moderator could close it on accident or on purpose without permission.
Having Admin-only permissions would allow polls only to be closed in a worst-case scenario, and since Admins are expected to be only given to people in the community that are trusted, they wouldn't abuse this power.
Just a thought. Up to you, but I would find it useful for myself at least since my friends who have base moderator perms often closed my own polls!

I could add an option close-role where you can enter a role that is required to close a poll (overriding the default "can delete messages" check). That wouldn't be much additional effort. Would that work for you?


RPE-167: S2S Auth

JIRA link (if applicable)
S2S auth
Change description

Autowires AuthorisationService to pdf controller v2
Uses FeignClient as library for s2s auth is not ready

Does this PR introduce a breaking change? (check one with "x")
[x] Yes
[ ] No

SonarQube analysis reported 1 issue

 1 critical

Watch the comments in this conversation to review them.

Codecov Report

Merging #24 into master will decrease coverage by 2.88%.
The diff coverage is 73.33%.

@@             Coverage Diff              @@
##             master      #24      +/-   ##
============================================
- Coverage     87.09%   84.21%   -2.89%
- Complexity       23       28       +5
============================================
  Files             9       11       +2
  Lines            62       76      +14
  Branches          0        2       +2
============================================
+ Hits             54       64      +10
- Misses            8       12       +4

Impacted Files
Coverage Δ
Complexity Δ

...mcts/reform/pdf/service/PDFServiceApplication.java
50% <ø> (ø)
2 <0> (ø)
:arrow_down:

...rm/pdf/service/config/PDFServiceConfiguration.java
100% <100%> (ø)
3 <1> (+1)
:arrow_up:

.../pdf/service/exception/AuthorisationException.java
100% <100%> (ø)
1 <1> (?)

...f/service/endpoint/v2/PDFGenerationEndpointV2.java
100% <100%> (ø)
3 <2> (ø)
:arrow_down:

...eform/pdf/service/exception/ExceptionHandling.java
75% <100%> (+8.33%)
5 <2> (+2)
:arrow_up:

...form/pdf/service/service/AuthorisationService.java
42.85% <42.85%> (ø)
1 <1> (?)

Continue to review full report at Codecov.

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


Fix ObjectUnsubscribedError on destroy when onInitialDelay is not yet…

… reached. The setTimeout function fires after the component is destroyed. Added a clearTimeout and a this.onInitialDelay variable

@JHeidinga Hi,
Nice to see the fix. I'm currently working on some major update you can try it in branch ng6-revamp.
Thanks

@sheikalthaf I think you are looking for the delay operator https://www.learnrxjs.io/operators/utility/delay.html I could look into it if you still need it in the revamp

@JHeidinga sure. Because need to avoid the settimeout in favor of rxjs

Just want to follow this thread for fixes....


[Enhancement] - Change Password screen

What

added change password screen, toolbar and added style for TextInputLayout/TextInputEditText.
Spoke to @dannyalright about the password visibility toggle to keep consistency throughout the app.

Why

Continuing settings v2 features.

See

 User can seee change password screen


Question: routing based on condition

There is similar question with answer about zuul 2.x
https://github.com/Netflix/zuul/issues/182
Lets say I have 1.x and latest spring-cloud-netflix routing setup
zuul.routes.datacenter1=/datacenter1/**
zuul.routes.datacenter2=/datacenter2/**

...
some ribbon setup for dc1 and dc2

Now, based on condition, I would like to hit dc1 or dc2. What would be the best way to implement this?

forward request to /datacenterX/ in pre-filter
create new PreDecorationFilter and suppress existing one
any other option?

Please advise, Thanks!

Ok, I've got it working in following way:

Created "pre" filter with order lower than in PreDecorationFilter
Based on my logic, added datacenter prefix to request URL. Something like this:

RequestContext.getCurrentContext().getRequest().setAttribute(WebUtils.INCLUDE_REQUEST_URI_ATTRIBUTE, "/datacenter1/" + requesrUri);

Anded routing config fie:

zuul.routes.service=/service/**
zuul.routes.datacenter1=/datacenter1/service**
zuul.routes.datacenter2=/datacenter2/service**
...
some ribbon setup for dc1, dc2 and service routes

This allows all requests to be load balanced between DC's and some of requests to go directly to one of the DC's.


Fix #3157 to make sure the brokers option is configured in native mode

@jamesnetherton I create the following https://github.com/apache/camel-quarkus/issues/3206 to keep invesigating the failure test and since the workaround to override the property works, I'd like to merge this PR first.


Determine the contents of the repository

I think we need to discuss what exactly we keep in this repository with respect to the schema. I can think of 3 options:

Isolated beacon-related Avro IDL files. Basically what we currently have in schema directory as a result of #27.
All the schemas, i.e. sync with ga4gh/schemas as the upstream repository, as suggested in https://github.com/ga4gh/beacon-team/pull/27#issuecomment-208240302.
Beacon-related schemas with a subset of tools from ga4gh/schemas adopted to beacons, i.e. develop beacons as an independent artifact with ga4gh/schemas as a dependency.

I think my vote goes to option 3 - I'd like our stuff to be sort of self-contained, i.e. compilable and not referring to things outside this repository (hence not option 1), and developed as an independent artifact (hence not option 2).

+1 for option 3

I've not yet a formed opinion on this.


using it as a library

Hey there! Great little project you wrote! I find your implementation to be way better for handling functions and more focused and strict than langchain's one for example, it's great not having to use pydantic or some middle step
In fact I've used in my library, check it out: https://github.com/rogeriochaves/litechain/blob/main/litechain/contrib/utils/open_ai_functions.py
I've just made a small change:
     if (
-        len(func.body) != 1
+        len(func.body) == 0
         or not isinstance(func.body[0], ast.Expr)
         or not isinstance(func.body[0].value, ast.Str)
     ):
-        raise ValueError("The function body should only contain a docstring")
+        raise ValueError("The function body should contain a docstring")

This is because I want my functions to have actual execution bodies too, so LiteChain actually calls them directly. I've also removed the pyscript bits, as I'm just using it as a module.
It is working well, however I didn't want to maintain this inside LiteChain, do you have plans to publish it as a library? I can help providing updates as well

Hi, I agree that using py2gpt as a package would be useful. It is something that I was thinking about, but haven't had the time to do it yet. I want to leave the web UI available, for easy one-off conversions, but separate the core functionality from it. As pyscript handles pip packages, I thought of making a pip package out of py2gpt, and simply importing it in the web app.
I'm glad that you found py2gpt useful. I'll try to find some time over the next few days to do this refactoring. Feel free to make a PR, if you'd like.


MacOS machine for JCK testing

Agreed that Macstadium will provide us with two further mac's for this purpose. Waiting to find out which os level to deploy.

two macos 10.10 machines have now been deployed. @sxa555 has the credentials


add STT Cipasung

@aga-io First stage of verification passed, official domain for Sekolah Tinggi Teknologi Cipasung is sttcipasung.ac.id as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@aga-io Thank you for your patience while waiting for a review and processing your request. Pull request merged.
Please start requesting the licenses in about an hour, to let the changes to propagate through our system.


Bugfix: docker-compose instructions create a sonic container that fails to start

Describe the bug
I followed the docker-compose instructions from the README. This is the result:
[root@Acheron archivebox]# docker-compose ps
         Name                        Command                State             Ports
--------------------------------------------------------------------------------------------
archivebox_archivebox_1   dumb-init -- /app/bin/dock ...   Up         <IP_ADDRESS>:8000->8000/tcp
archivebox_sonic_1        sonic -c /etc/sonic.cfg          Exit 101

[root@Acheron archivebox]# docker-compose logs sonic
Attaching to archivebox_sonic_1
sonic_1       | thread 'main' panicked at 'cannot read config file: Os { code: 21, kind: Other, message: "Is a directory" }', src/config/reader.rs:24:14
sonic_1       | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
sonic_1       | thread 'main' panicked at 'cannot read config file: Os { code: 21, kind: Other, message: "Is a directory" }', src/config/reader.rs:24:14
sonic_1       | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Search seems to work anyway.
 Check if the specified host path exists and is the expected type

ERROR: for sonic  Cannot start service sonic: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/opt/docker/projects/archivebox/etc/sonic/config.cfg" to rootfs at "/var/lib/docker/overlay2/13cc28834c925d7a3565efeb8f3b487349a039735d495dd48e1817cc67f39e57/merged/etc/sonic.cfg" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: Encountered errors while bringing up the project.

After deleting the automatically generated directory and copying https://github.com/valeriansaliou/sonic/blob/master/config.cfg to ./etc/sonic/config.cfg, I get the following error:
[root@Acheron archivebox]# docker-compose up -d
Starting archivebox_sonic_1 ... error

ERROR: for archivebox_sonic_1  Cannot start service sonic: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/opt/docker/projects/archivebox/etc/sonic/config.cfg" to rootfs at "/var/lib/docker/overlay2/13cc28834c925d7a3565efeb8f3b487349a039735d495dd48e1817cc67f39e57/merged/etc/sonic.cfg" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type

ERROR: for sonic  Cannot start service sonic: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/opt/docker/projects/archivebox/etc/sonic/config.cfg" to rootfs at "/var/lib/docker/overlay2/13cc28834c925d7a3565efeb8f3b487349a039735d495dd48e1817cc67f39e57/merged/etc/sonic.cfg" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: Encountered errors while bringing up the project.

Thanks for reporting, @jdcaballerov are there any steps missing I need to add to the readme to get Sonic working?

Thanks for reporting, @jdcaballerov are there any steps missing I need to add to the readme to get Sonic working?

One option might be to simply include the example config.cfg from the sonic repo when running the init command.
Sorry to continue commenting, but I'm working through this still... now that Sonic is running, search doesn't seem to return any results. After docker-compose stop sonic, I get results again, but with the notice "Error from the search backend, only showing results from default admin search fields - Error: [Errno -2] Name or service not known" Not sure if I need to kick off an index job?

One option might be to simply include the example config.cfg from the sonic repo when running the init command.
Sorry to continue commenting, but I'm working through this still... now that Sonic is running, search doesn't seem to return any results. After docker-compose stop sonic, I get results again, but with the notice "Error from the search backend, only showing results from default admin search fields - Error: [Errno -2] Name or service not known" Not sure if I need to kick off an index job?

@pirate @JohnMaguire  The required config,cfg is included in etc/ we need to devise a solution to include it for the people not having the etc directory ( the config file is mounted as a volume) and are using an image from docker registry. (BUG)
Using the config from https://github.com/ArchiveBox/ArchiveBox/tree/dev/etc/sonic will likely err since it uses IPV6 not enabled by default in docker, as I remember. There are other parameters tuned for this use case.

@pirate @JohnMaguire  The required config,cfg is included in etc/ we need to devise a solution to include it for the people not having the etc directory ( the config file is mounted as a volume) and are using an image from docker registry. (BUG)
Using the config from https://github.com/ArchiveBox/ArchiveBox/tree/dev/etc/sonic will likely err since it uses IPV6 not enabled by default in docker, as I remember. There are other parameters tuned for this use case.

Perhaps a simple solution would be to amend the docker-compose instructions to include:
mkdir -p ~/archivebox{,etc/sonic/} && cd ~/archivebox/  # in lieu of mkdir ~/archivebox && cd ~/archivebox, or as a discrete step
curl -O https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/dev/etc/sonic/config.cfg > etc/sonic/config.cfg

Perhaps a simple solution would be to amend the docker-compose instructions to include:
mkdir -p ~/archivebox{,etc/sonic/} && cd ~/archivebox/  # in lieu of mkdir ~/archivebox && cd ~/archivebox, or as a discrete step
curl -O https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/dev/etc/sonic/config.cfg > etc/sonic/config.cfg

After updating to use the config from this repo, I am still not seeing results however...
Pre-Search:

Post-Search:

After updating to use the config from this repo, I am still not seeing results however...
Pre-Search:

Post-Search:

@JohnMaguire Sonic will index the newly added links. For old links you need to manually trigger indexing  with update index only option.

@JohnMaguire Sonic will index the newly added links. For old links you need to manually trigger indexing  with update index only option.

[root@Acheron archivebox]# docker-compose run archivebox update --index-only
Creating archivebox_archivebox_run ... done
[i] [2021-01-20 04:01:36] ArchiveBox v0.5.3: archivebox update --index-only
    > /data

[*] Indexing url: https://google.com/ in the search index

But still no results or logs to note (tried google, google.com and Google):
archivebox_1  | [20/Jan/2021 04:02:33] "GET /admin/core/snapshot/?q=google.com HTTP/1.1" 200 11806
archivebox_1  | [20/Jan/2021 04:02:33] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - took 0ms/122us/122683ns to process channel message
sonic_1       | (INFO) - stop search executor as no iid was found in common for term: google
sonic_1       | (INFO) - got search executor final oids: []
sonic_1       | (INFO) - took 1ms/1579us/1579322ns to process channel message
sonic_1       | (INFO) - took 0ms/58us/58790ns to process channel message
archivebox_1  | [20/Jan/2021 04:02:35] "GET /admin/core/snapshot/?q=Google HTTP/1.1" 200 11738
archivebox_1  | [20/Jan/2021 04:02:35] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - took 0ms/119us/119481ns to process channel message
sonic_1       | (INFO) - stop search executor as no iid was found in common for term: google
sonic_1       | (INFO) - got search executor final oids: []
sonic_1       | (INFO) - took 1ms/1692us/1692223ns to process channel message
sonic_1       | (INFO) - took 0ms/64us/64081ns to process channel message
archivebox_1  | [20/Jan/2021 04:02:38] "GET /admin/core/snapshot/?q=google HTTP/1.1" 200 11738
archivebox_1  | [20/Jan/2021 04:02:38] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - done scanning for kv store pool items to janitor, expired 0 items, now has 1 items
sonic_1       | (INFO) - done scanning for fst store pool items to janitor, expired 0 items, now has 1 items
sonic_1       | (INFO) - no kv store pool items need to be flushed at the moment
sonic_1       | (INFO) - no fst store pool items need to consolidate at the moment
sonic_1       | (INFO) - ran tasker tick (took 0s + 0ms)

[root@Acheron archivebox]# docker-compose run archivebox update --index-only
Creating archivebox_archivebox_run ... done
[i] [2021-01-20 04:01:36] ArchiveBox v0.5.3: archivebox update --index-only
    > /data

[*] Indexing url: https://google.com/ in the search index

But still no results or logs to note (tried google, google.com and Google):
archivebox_1  | [20/Jan/2021 04:02:33] "GET /admin/core/snapshot/?q=google.com HTTP/1.1" 200 11806
archivebox_1  | [20/Jan/2021 04:02:33] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - took 0ms/122us/122683ns to process channel message
sonic_1       | (INFO) - stop search executor as no iid was found in common for term: google
sonic_1       | (INFO) - got search executor final oids: []
sonic_1       | (INFO) - took 1ms/1579us/1579322ns to process channel message
sonic_1       | (INFO) - took 0ms/58us/58790ns to process channel message
archivebox_1  | [20/Jan/2021 04:02:35] "GET /admin/core/snapshot/?q=Google HTTP/1.1" 200 11738
archivebox_1  | [20/Jan/2021 04:02:35] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - took 0ms/119us/119481ns to process channel message
sonic_1       | (INFO) - stop search executor as no iid was found in common for term: google
sonic_1       | (INFO) - got search executor final oids: []
sonic_1       | (INFO) - took 1ms/1692us/1692223ns to process channel message
sonic_1       | (INFO) - took 0ms/64us/64081ns to process channel message
archivebox_1  | [20/Jan/2021 04:02:38] "GET /admin/core/snapshot/?q=google HTTP/1.1" 200 11738
archivebox_1  | [20/Jan/2021 04:02:38] "GET /admin/jsi18n/ HTTP/1.1" 200 3321
sonic_1       | (INFO) - done scanning for kv store pool items to janitor, expired 0 items, now has 1 items
sonic_1       | (INFO) - done scanning for fst store pool items to janitor, expired 0 items, now has 1 items
sonic_1       | (INFO) - no kv store pool items need to be flushed at the moment
sonic_1       | (INFO) - no fst store pool items need to consolidate at the moment
sonic_1       | (INFO) - ran tasker tick (took 0s + 0ms)

OK, searching on the public index works correctly. From the admin UI, it returns no results.

OK, searching on the public index works correctly. From the admin UI, it returns no results.

@JohnMaguire rebuilding the index is a task that is managed by sonic and doesn't occur immediately after being instructed to do so. Allow some time without killing it and let us know.

@JohnMaguire rebuilding the index is a task that is managed by sonic and doesn't occur immediately after being instructed to do so. Allow some time without killing it and let us know.

I added example.com as well, and am seeing the same behavior:

Searching for "example" on http://<IP_ADDRESS>:8000/public/?q=example works.
Searching for "example" on http://<IP_ADDRESS>:8000/admin/core/snapshot/grid/?q=example returns no results.

I know you mentioned "Sonic will only index the newly added links after it's enabled," so I think it should index this? And since the public search is returning, it seems unlikely that indexing is broken?

I added example.com as well, and am seeing the same behavior:

Searching for "example" on http://<IP_ADDRESS>:8000/public/?q=example works.
Searching for "example" on http://<IP_ADDRESS>:8000/admin/core/snapshot/grid/?q=example returns no results.

I know you mentioned "Sonic will only index the newly added links after it's enabled," so I think it should index this? And since the public search is returning, it seems unlikely that indexing is broken?

I'm seeing this as well: searching while logged in as an admin returns no results while searching logged out works properly. I'm also using docker-compose.

I'm seeing this as well: searching while logged in as an admin returns no results while searching logged out works properly. I'm also using docker-compose.

What kind of false positives and negatives are you seeing? If you're willing to share screenshots / specific examples of the search queries and bad matches that would help a lot. It could be caused by a number of things, ranging from a bug in the query handling code to using the wrong extractor format for indexing.

What kind of false positives and negatives are you seeing? If you're willing to share screenshots / specific examples of the search queries and bad matches that would help a lot. It could be caused by a number of things, ranging from a bug in the query handling code to using the wrong extractor format for indexing.

A search for scar matches https://www.radiomods.co.nz/kenwood/kenwoodts440.html
jack fails to match that page but matches http://tarpn.net/t/faq/faq_networking_on_purpose.html and http://tarpn.net/t/faq/faq_packet_radio.html
brass, dirt, and mantra fail to match https://teddit.net/r/WritingPrompts/comments/5kxe94/wp_you_live_in_a_world_where_each_lie_creates_a/
dirt also matches https://nwavguy.blogspot.com/2011/07/o2-headphone-amp.html
I'm running the suggested docker-compose config with PDF, screenshot, DOM, readability, and archive.org saving turned off.

A search for scar matches https://www.radiomods.co.nz/kenwood/kenwoodts440.html
jack fails to match that page but matches http://tarpn.net/t/faq/faq_networking_on_purpose.html and http://tarpn.net/t/faq/faq_packet_radio.html
brass, dirt, and mantra fail to match https://teddit.net/r/WritingPrompts/comments/5kxe94/wp_you_live_in_a_world_where_each_lie_creates_a/
dirt also matches https://nwavguy.blogspot.com/2011/07/o2-headphone-amp.html
I'm running the suggested docker-compose config with PDF, screenshot, DOM, readability, and archive.org saving turned off.

Can you try enabling either the readability or mercury extractor @thedanbob and running archivebox update --index-only again? Having at least one article text extractor available will yield the highest quality index, it sometimes struggles when it only indexes raw HTML without the cleaned/extracted text.

Can you try enabling either the readability or mercury extractor @thedanbob and running archivebox update --index-only again? Having at least one article text extractor available will yield the highest quality index, it sometimes struggles when it only indexes raw HTML without the cleaned/extracted text.

I did have mercury enabled, but I enabled readability as well and reindexed everything.  I saw most of the same false positives/negatives, though a few changed:
jack no longer matches http://tarpn.net/t/faq/faq_packet_radio.html
dirt no longer matches https://nwavguy.blogspot.com/2011/07/o2-headphone-amp.html but does match https://teddit.net/r/WritingPrompts/comments/5pi8t0/pi_everybody_in_the_world_has_a_superpower_that/, a false negative that I didn't catch before. Still has the original false negative.

I did have mercury enabled, but I enabled readability as well and reindexed everything.  I saw most of the same false positives/negatives, though a few changed:
jack no longer matches http://tarpn.net/t/faq/faq_packet_radio.html
dirt no longer matches https://nwavguy.blogspot.com/2011/07/o2-headphone-amp.html but does match https://teddit.net/r/WritingPrompts/comments/5pi8t0/pi_everybody_in_the_world_has_a_superpower_that/, a false negative that I didn't catch before. Still has the original false negative.

Thanks @JohnMaguire @thedanbob for taking time to report. Up to now I've noticed a buffer overflow in sonic that might be causing this weird behavior.
https://github.com/ArchiveBox/ArchiveBox/pull/625

Thanks @JohnMaguire @thedanbob for taking time to report. Up to now I've noticed a buffer overflow in sonic that might be causing this weird behavior.
https://github.com/ArchiveBox/ArchiveBox/pull/625

Given these entries:

The following searches return a single result on the public index, but not admin:

google
Google

The following searches return on both:

example
Example
b2
classy
weblog tool

The following searches return on neither:

google.com
example.com

From what I can tell, it is only the Google entry (which was added prior to getting Sonic working) that is failing to return from the Admin search.

Given these entries:

The following searches return a single result on the public index, but not admin:

google
Google

The following searches return on both:

example
Example
b2
classy
weblog tool

The following searches return on neither:

google.com
example.com

From what I can tell, it is only the Google entry (which was added prior to getting Sonic working) that is failing to return from the Admin search.

Thanks @jdcaballerov, #625 fixes all of the false negatives I was seeing (and a few I didn't catch at first). I think all of the false positives can be chalked up to sonic's fuzzy search which I wasn't aware of at first.

Thanks @jdcaballerov, #625 fixes all of the false negatives I was seeing (and a few I didn't catch at first). I think all of the false positives can be chalked up to sonic's fuzzy search which I wasn't aware of at first.

After building a Docker image from 553c3ca2192e8ce3b42b018ba3bba10e13494748, running docker-compose up -d to create a new container off the new image, and running docker-compose run archivebox update --index-only, I am still not getting results for "google" or "Google" in the Admin. It continues to work on the public index.

After building a Docker image from 553c3ca2192e8ce3b42b018ba3bba10e13494748, running docker-compose up -d to create a new container off the new image, and running docker-compose run archivebox update --index-only, I am still not getting results for "google" or "Google" in the Admin. It continues to work on the public index.

This should be fixed now in v0.5.4, please give it a try. Report back here if you have any issues and I can reopen the ticket.
Please note while the content, title, and tags support full-text search / substring search, URL search must be exact at the moment. This will be improved in a future version.

I'm still facing this issue.
mkdir ~/archivebox && cd ~/archivebox
curl -O 'https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/docker-compose.yml'
docker-compose run archivebox init
docker-compose run archivebox --version
docker-compose run archivebox manage createsuperuser
docker-compose up

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3014  100  3014    0     0   6594      0 --:--:-- --:--:-- --:--:--  6594
Starting archivebox_sonic_1 ... done
[i] ArchiveBox v0.5.6: archivebox init
    > /data

[+] Initializing a new ArchiveBox collection in this folder...
    /data
------------------------------------------------------------------

[+] Building archive folder structure...
    √ /data/sources
    √ /data/archive
    √ /data/logs
    √ /data/ArchiveBox.conf

[+] Building main SQL index and running migrations...
    √ /data/index.sqlite3

    Operations to perform:
      Apply all migrations: admin, auth, contenttypes, core, sessions
    Running migrations:
    Applying contenttypes.0001_initial... OK
    Applying auth.0001_initial... OK
    Applying admin.0001_initial... OK
    Applying admin.0002_logentry_remove_auto_add... OK
    Applying admin.0003_logentry_add_action_flag_choices... OK
    Applying contenttypes.0002_remove_content_type_name... OK
    Applying auth.0002_alter_permission_name_max_length... OK
    Applying auth.0003_alter_user_email_max_length... OK
    Applying auth.0004_alter_user_username_opts... OK
    Applying auth.0005_alter_user_last_login_null... OK
    Applying auth.0006_require_contenttypes_0002... OK
    Applying auth.0007_alter_validators_add_error_messages... OK
    Applying auth.0008_alter_user_username_max_length... OK
    Applying auth.0009_alter_user_last_name_max_length... OK
    Applying auth.0010_alter_group_name_max_length... OK
    Applying auth.0011_update_proxy_permissions... OK
    Applying auth.0012_alter_user_first_name_max_length... OK
    Applying core.0001_initial... OK
    Applying core.0002_auto_20200625_1521... OK
    Applying core.0003_auto_20200630_1034... OK
    Applying core.0004_auto_20200713_1552... OK
    Applying core.0005_auto_20200728_0326... OK
    Applying core.0006_auto_20201012_1520... OK
    Applying core.0007_archiveresult... OK
    Applying core.0008_auto_20210105_1421... OK
    Applying sessions.0001_initial... OK

[*] Collecting links from any existing indexes and archive folders...

[*] [2021-03-14 13:48:04] Writing 0 links to main index...
    √ /data/index.sqlite3

------------------------------------------------------------------
[√] Done. A new ArchiveBox collection was initialized (0 links).

Recreating archivebox_sonic_1 ... done
Recreating archivebox_archivebox_1 ... done
Attaching to archivebox_sonic_1, archivebox_archivebox_1
sonic_1       | thread 'main' panicked at 'cannot read config file: Os { code: 21, kind: Other, message: "Is a directory" }', src/config/reader.rs:24:14
sonic_1       | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
archivebox_sonic_1 exited with code 101
archivebox_1  | [i] ArchiveBox v0.5.6: archivebox server <IP_ADDRESS>:8000
archivebox_1  |     > /data
archivebox_1  |
archivebox_1  | [+] Starting ArchiveBox webserver...
archivebox_1  |     Hint: The admin username is archivebox
archivebox_1  |
archivebox_1  | Performing system checks...
archivebox_1  |
archivebox_1  | System check identified no issues (0 silenced).
archivebox_1  | Django version 3.1.3, using settings 'core.settings'
archivebox_1  | Starting development server at http://<IP_ADDRESS>:8000/
archivebox_1  | Quit the server with CONTROL-C.

I tried creating config.cfg as described by @JohnMaguire too.

I'm still facing this issue.
mkdir ~/archivebox && cd ~/archivebox
curl -O 'https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/docker-compose.yml'
docker-compose run archivebox init
docker-compose run archivebox --version
docker-compose run archivebox manage createsuperuser
docker-compose up

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3014  100  3014    0     0   6594      0 --:--:-- --:--:-- --:--:--  6594
Starting archivebox_sonic_1 ... done
[i] ArchiveBox v0.5.6: archivebox init
    > /data

[+] Initializing a new ArchiveBox collection in this folder...
    /data
------------------------------------------------------------------

[+] Building archive folder structure...
    √ /data/sources
    √ /data/archive
    √ /data/logs
    √ /data/ArchiveBox.conf

[+] Building main SQL index and running migrations...
    √ /data/index.sqlite3

    Operations to perform:
      Apply all migrations: admin, auth, contenttypes, core, sessions
    Running migrations:
    Applying contenttypes.0001_initial... OK
    Applying auth.0001_initial... OK
    Applying admin.0001_initial... OK
    Applying admin.0002_logentry_remove_auto_add... OK
    Applying admin.0003_logentry_add_action_flag_choices... OK
    Applying contenttypes.0002_remove_content_type_name... OK
    Applying auth.0002_alter_permission_name_max_length... OK
    Applying auth.0003_alter_user_email_max_length... OK
    Applying auth.0004_alter_user_username_opts... OK
    Applying auth.0005_alter_user_last_login_null... OK
    Applying auth.0006_require_contenttypes_0002... OK
    Applying auth.0007_alter_validators_add_error_messages... OK
    Applying auth.0008_alter_user_username_max_length... OK
    Applying auth.0009_alter_user_last_name_max_length... OK
    Applying auth.0010_alter_group_name_max_length... OK
    Applying auth.0011_update_proxy_permissions... OK
    Applying auth.0012_alter_user_first_name_max_length... OK
    Applying core.0001_initial... OK
    Applying core.0002_auto_20200625_1521... OK
    Applying core.0003_auto_20200630_1034... OK
    Applying core.0004_auto_20200713_1552... OK
    Applying core.0005_auto_20200728_0326... OK
    Applying core.0006_auto_20201012_1520... OK
    Applying core.0007_archiveresult... OK
    Applying core.0008_auto_20210105_1421... OK
    Applying sessions.0001_initial... OK

[*] Collecting links from any existing indexes and archive folders...

[*] Writing 0 links to main index...
    √ /data/index.sqlite3

------------------------------------------------------------------
[√] Done. A new ArchiveBox collection was initialized (0 links).

Recreating archivebox_sonic_1 ... done
Recreating archivebox_archivebox_1 ... done
Attaching to archivebox_sonic_1, archivebox_archivebox_1
sonic_1       | thread 'main' panicked at 'cannot read config file: Os { code: 21, kind: Other, message: "Is a directory" }', src/config/reader.rs:24:14
sonic_1       | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
archivebox_sonic_1 exited with code 101
archivebox_1  | [i] ArchiveBox v0.5.6: archivebox server <IP_ADDRESS>:8000
archivebox_1  |     > /data
archivebox_1  |
archivebox_1  | [+] Starting ArchiveBox webserver...
archivebox_1  |     Hint: The admin username is archivebox
archivebox_1  |
archivebox_1  | Performing system checks...
archivebox_1  |
archivebox_1  | System check identified no issues (0 silenced).
archivebox_1  | Django version 3.1.3, using settings 'core.settings'
archivebox_1  | Starting development server at http://<IP_ADDRESS>:8000/
archivebox_1  | Quit the server with CONTROL-C.

I tried creating config.cfg as described by @JohnMaguire too.

Ubuntu 20.04 LTS @pirate

@thentoorglan-x What issue are you experiencing? Your logs do not include the error reported in the original post here (which is regarding a missing config.cfg). Your logs appear as though the service started up correctly. I'd advise you file a new ticket clearly describing what you're experiencing versus what you expected.

Also had the issue described initially in this thread and recently by @thentoorglan-x . I think the sonic section in docker-compose.yaml file should have its volume updated to
        volumes:
            - ./etc/sonic/config.cfg:/etc/sonic.cfg:ro
            - ./data/sonic:/var/lib/sonic/store

This syncs the config file to where it is placed in the wget command
wget https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/etc/sonic/config.cfg -O etc/sonic/config.cfg
from the wiki page https://github.com/ArchiveBox/ArchiveBox/wiki/Docker#setup

I updated it in the docker-compose.yml file on dev yesterday, take a look at the comment section above the sonic block for instructions. Will update the wiki now too.

I have tried the last version in dev and face the same issue as previously described.
IMO the question is WHERE to save the Sonic config.cfg file.
I am using a docker installation nested within a Proxmox container -- it works very well and I have currently more than  docker servers working that way...
So, I tried to download the config file in:

the enclosing Proxmox container, at the root /config.cfg
the root level of the Archivebox container
None worked.
Are you sure the path to the config file should be, in the docker-compose.yaml file ./config.cfg?

Where are you seeing config.cfg in the docker-compose.yml file? Can you make sure it's up to date with the one on dev or screenshot exactly the one you're using?


Improve styling of IdleView

my current naive styling (reusing ModalTextRevealer) could do with a bit of love:

done in #159


Repo sync for protected CLA branch

The pull request is created from master637475587401333200 to master to fix git push error for protected CLA branch

@cmcclister : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@cmcclister : Thanks for your contribution! The author(s) have been notified to review your proposed change.


/api/send responds with 500 due to invalid payload (websiteId field)

Describe the Bug
/api/send returns 500.

https://github.com/discordplace/discord.place/blob/main/client/app/layout-content.js#L33-L38
https://github.com/discordplace/discord.place/blob/main/client/config.js#L53-L57
Database
PostgreSQL
Relevant log output
PrismaClientValidationError:

Invalid `prisma.websiteEvent.create()` invocation:

{

data: {

id: "57be1bb5-6b82-470b-8f90-9720921f71a8",

sessionId: undefined,

visitId: "40aad27f-0a86-5749-adce-8a174f5b69d2",

urlPath: "/",

urlQuery: undefined,

referrerPath: undefined,

referrerQuery: undefined,

referrerDomain: "",

pageTitle: "Discord Place",

eventType: 1,

eventName: null,

+   websiteId: String

}

}

Argument `websiteId` is missing.

at An (/app/node_modules/@prisma/client/runtime/library.js:114:7526)

at _n.handleRequestError (/app/node_modules/@prisma/client/runtime/library.js:121:7392)

at _n.handleAndLogRequestError (/app/node_modules/@prisma/client/runtime/library.js:121:7057)

at _n.request (/app/node_modules/@prisma/client/runtime/library.js:121:6741)

at async l (/app/node_modules/@prisma/client/runtime/library.js:130:9355)

at async x (/app/.next/server/pages/api/send.js:1:2791)

at async K (/app/node_modules/next/dist/compiled/next-server/pages-api.runtime.prod.js:20:16853)

at async U.render (/app/node_modules/next/dist/compiled/next-server/pages-api.runtime.prod.js:20:17492)

at async NextNodeServer.runApi (/app/node_modules/next/dist/server/next-server.js:600:9)

at async NextNodeServer.handleCatchallRenderRequest (/app/node_modules/next/dist/server/next-server.js:269:37) {

clientVersion: '5.17.0'

}

Which Umami version are you using? (if relevant)
v2.13.2
Which browser are you using? (if relevant)
Chrome
How are you deploying your application? (if relevant)
Railway, Docker

try https://api.umami.is/v1/

We are also experiencing the same issue:
PrismaClientValidationError:
Invalid `prisma.eventData.createMany()` invocation:

{
  data: [
    {
      id: "904aff8c-223c-4a66-a316-019c2659d2d1",
      websiteEventId: "91817972-542a-418f-a0f0-4a49148accb2",
      websiteId: undefined,
      dataKey: "term",
      stringValue: "mtic",
      numberValue: null,
      dateValue: null,
      dataType: 1
    }
  ]
}

Argument `websiteId` is missing.

It this only happening if you send event data or with normal requests too?

It this only happening if you send event data or with normal requests too?

happens in all requests as far as I can see

I deleted the project from Railway and created & linked it again, no error now.

Actually after some digging in the codebase, I've found that activating REDIS_URL improved Umami's performance a lot and that change removed the issue, since those  immutable SELECTs are now cached.


Feature Request: MDoc/MDL PEX validation support

I'm submitting a ...
[ ] bug report
[ x] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project

Summary

Hello!
This library has been great for my PEX use cases, namely how it can verify that a presentation matches the request on the verifier side. Would this library be interested in supporting the same verification for MDoc/MDL credentials?
There are some tricky things to consider with that use case, namely what format is the input as some MDoc/MDL libs provide a different structure for the decoded and parsed credential.

Other information (e.g. detailed explanation, stack traces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

N/A

Yes we will be adding support for mdl/mdoc soon. We already have a library that can actually support mdl/mdocs with PE in kotlin multiplatform and also in its typescript export. We will probably take some of it its types/interfaces and then make a peer dep on the mdl/mdoc typescript implementation.

Btw we will probably follow iso 18015-7 as the basis, which is using PE in combination with OID4VC. In the sense that we will probably take base64url encoded issuerauth and deviceresponses as objects

@nklomp thanks for the quick response. this all sounds great, i dont have a rigid timeline on requiring this so whenever you can get around to it is good. id be happy to help but it sounds like you guys may have all bases covered here!


Fix typos, and use panic instead of log.Fatal in doc.go

The use of panic is to match the image.

Thank you for fixing the typos, but why do you prefer panic to log.Fatal?
If we want to replace it, let's create a separate PR for that.

If I don't get your answer until tomorrow, I'll pick the typo fixes from your PR instead of merging it. Thanks.

I thought it would be good the code would match the overview image. Not about preference. I overthought about it.


Optimizing halo communications in GCEED part.

I optimized halo communications (peer-to-peer communications) in GCEED part as follows:

optimize pack/unpack routines.
use persistent communication of MPI.

I checked the performance results under Xeon Phi 16 nodes, this PR reduced 20% of total execution time when RT calculation.
Verification of results
I verified calculation results with C2H2 molecule example under Xeon Phi as following process distributions:

Xeon Phi executes with 16 MPI processes
nproc_ob sets 2.
nproc_domain sets 2,2,2
nproc_domain_s sets 4,2,2

Note
I will send PR for reducing and unifying halo communications after merged it.
Suggestion
C_sendrecvh and sendrecv_groupob_ngp are never used, so I suggest that remove it.

Thank you for your implementation, @yhirokawa san. I'll take a benchmark and reply this PR later, and I'll consider your suggestion.

I confirmed that the implemented code is 1.34 times faster than before. It's too amazing for me. I'd like to pass this PR, but one problem is left. Fujitsu compiler doesn't pass the build for this code. I'll specify the point by a review function.

@mn2007 san, thank you for reviewing. I fixed omp directives in sendrecv_copy.f90.

Thank you for the modification and the large contribution, @yhirokawa san. I merge this PR.


Allow absolute path definition in filesystem namer

Current configuration only supports relative directories inside linkerd home folder to setup rootDir. When you're trying to define absolute path for names/rootDir it will use linkerd/disco folder as a fallback instead.
Config example:
namers:
- kind: io.l5d.fs
  rootDir: /usr/local/var/lib/linkerd

IDK since when, but at least 0.7.5 supports absolute paths in rootDir. Moreover since fe5943bc53a3e305275b023abc19fc2a86c1ae3b @adleong added a test that uses absolute path for rootDir.

Thanks for pointing this out, @Ashald!

NP. ;)

@Ashald @olix0r thanks!


DTA main site mobile / small screen menu issues

DTA main site mobile / small screen menu
Page tested: Simple, clear and fast public services
https://www.dta.gov.au/our-projects/digital-service-platforms-strategy
Issues and recommendations
Firstly I strongly advise against using ARIA menus for website navigation. These should only be used for Windows desktop type applications.
Issues:
Role menu is missing child attribute role=menuitem.
Incorrect keyboard mapping.

Expected keyboard mapping for an ARIA menu
Right Arrow: Moves focus to the next item in the menubar. If focus is on the last item, moves focus to the first item.
Left Arrow: Moves focus to the previous item in the menubar.
If focus is on the first item, moves focus to the last item.
Down Arrow: Opens submenu and moves focus to first item in the submenu.
Up Arrow: Opens submenu and moves focus to last item in the submenu.
Home: Moves focus to first item in the menubar.
End: Moves focus to last item in the menubar.
Esc must close the expanded menu from anywhere on the page.

Solution 1: (recommended) Remove all existing ARIA menu attributes and roles: role=menu, aria-haspopup
Implement aria-expanded and aria-controls on the menu button. Aria controls to point to the sub menu container.
Solution 2:
Include role=menuitem on the focusable element in the expanded menu. <a href ...
Fix keyboard mapping.
Lastly the method used to label the navigation is not the best approach.
< nav role="navigation" aria-labelledby="main-navigation-label" >
< h2 class="visually-hidden" id="main-navigation-label">Main navigation
This is clumsy and unnecessary. It is also repetitive.
Screen readers will announce 'Main navigation navigation region' 'Heading level 2 Main navigation'. Wow! can that get irritating fast.
Solution: Remove aria-labelledby and the visually-hidden H2. Implement a simple aria-label="Main" on <nav role="navigation"
And you don't need role=navigation on the < nav >
Cheers
Laurence

Bug report

[Yes ] I’ve read and understood the Contributing guidelines and have done my best effort to follow them.
[Yes ] I’ve read and agree to the Code of Conduct.
[ Yes] I’ve searched for any related issues and avoided creating a duplicate issue.\

hey @Decrepidos thanks for bringing this up! This GitHub repository is actually for the Design System website.
You will want to post this ticket in the DTA website repo , and somebody from that team will take care of it :)


[Storage] Add support for pagenate deleting directories in datalake p…

Add support for pagenate deleting directories
Added rehydrate-pending-to-cold value to ArchiveStatus enum.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-storage-blob

/check-enforcer --skip

/check-enforcer override

/check-enforcer evaluate

/check-enforcer evaluate


output file is created but its empty(0.0Kb)

i ran the application in my nexus 5 with android 6.0 , no crash its running fine but output file data size is 0.0kb even though i have recorded it for more than 15 sec. Please help..

Same problem on my Nexus 5 device (android 6.0) - 0kb file on output.

This looks like a subtle bug ... I got it working (5.82MB file saved) once ... by changing the output file path to sdcard (you have to add WRITE_EXTERNAL_STORAGE to the VIDEO_PERMISSIONS Array at top of Camera2VideoFragment.java, in order to actually get the WRITE_EXTERNAL_STORAGE permission, specifying that in manifests doesn't work in debugging.) but then it start writing empty file again ...

Same issue on Nexus 6P (Android 6.0)- 0kb file on output.

Same issue.

I just installed this and having the same issue on kalin linux output folder is empty?

This sample has been migrated to a new location where we can accept Pull Requests (check README for more information).
As recommended by GitHub, we are closing all issues and pull requests now that this older repo will be archived.
If you still see this issue in the updated repo, please reopen the issue/PR there. Thank you!


Some events returned to Splunk have a semicolon and random string appended to the file name

From @basepi on March 7, 2017 22:42
From @mew1033 on March 2, 2017 23:12
There are some events getting returned to Splunk that have a semicolon and a random string appended to the file name.

The object_path parameter comes from the pathname field in pulsar.
Copied from original issue: hubblestack/pulsar#62
Copied from original issue: hubblestack/hubble-salt#23

So have we decided these are not real filenames?

From @mew1033 on March 2, 2017 23:43
I don't know. I would suspect not, but it's certainly possible.

Since @mew1033 hasn't mentioned this issue in years, I'm going to close it.


Add duration of UTs to summary view in index.html

Add duration(time) of UTs to "File Summary" view in index.html
thanks, Alex!

This will be included in the upcoming version.

ok, thank you!

Did this ever get added?
We are looking at using this, but we need the duration visibility!


Command line should check extension

In the command line tool, do not export or import metadata for files whose extension is not configured with the File Meta Property Handler. This will improve consistency with the context menu, which does not appear for such files.
This work item was migrated from CodePlex
CodePlex work item ID: '9334'
Vote count: '1'

[UnknownUser@21/11/2014]
Associated with changeset 81748.

[UnknownUser@26/08/2016]

Issue closed by Dijji with comment
Delivered
Reason closed
Fixed


See why rm * shows less files, but deletes all

if we use offset in create_directory_entry_iterator it deletes less

@raman4793 how are you with this?

@raman4793 any progress on this?


ShopifyExpress breaking changes (1.0.0-alpha.7)

In package.json

"@shopify/shopify-express": "^1.0.0-alpha.6",

Installs 1.0.0-alpha.7 as that's currently available.
v.7 appears to have introduced a number of changes that cause this repo to hang and not load at all (until nginx in front of mine, times out).
v.7 also changes the auth/callback URL's. (mostly irrelevant but worth noting)
Since shopify-express is basically "in progress", should shopify-node-app either a) keep up with shopify-express or b) install a known working shopify-express ?
I don't know, otherwise I'd of attached a PR setting

"@shopify/shopify-express": "1.0.0-alpha.6",

In package.json

same here

Closing because this project is now deprecated.