text:
Update to LFS 8.2

Hello @reinterpretcat !
Large update to new version of LFS, packages from this list was updated and added, patch for bash was removed. Order of some packages was changed, for example check sript was moved from prepare to build stage.
Also need build toolchains, iso and img files, and put new release.
Enjoy :smile:

Oops, seems system can not create loop device, is see message what /dev/loop0 is not found, need check.

yeah, has to be checked before merged..

@reinterpretcat hello! But PR still have a bug with loop device, i've not fixed it yet.

No problem, at the moment LFS 8.1 is release. If people will have questions, I would recommend to use it.

authors: EvilFreelancer reinterpretcat

repo: reinterpretcat/lfs


text:
Fix and further error handling capability

Sorry again for previous mishap (https://github.com/rejectedsoftware/vibe.d/pull/1645).
This one also allows to always receive an error when the server responds with an error (in case could not update, etc...).
This time it's tested..

Thanks, that was easy to miss. I should really start to use the JS generator in practice and ideally there should be an automated test, too., but I need to look into which headless browser engine is best to use for Travis CI.

The tests that currently check for the existence of "onload =" need to be adjusted (should probably check for existence of "on_result(" instead.

The tests that currently check for the existence of "onload =" need to be adjusted (should probably check for existence of "on_result(" instead.

Oh yes, I didn't think of checking.

source: gharchive/pull-request

authors: Timoses s-ludwig

license: mit

license_type: permissive

license_source: bigquery


text:
bug:  submit changes url immediately upon submission

Submitting a normal <form> does not have this behavior. I'd expect the url to be unchanged until the action responds with a redirect or other response.

[ ] Docs
[X] Tests

Any updates? Using useFetch doesn't have this problem though.

@mcansh will this be fixed by the change in 6.4 described by Ryan here? https://github.com/remix-run/remix/pull/2110#issuecomment-1180806310 🤔

@zipme Unlike forms, fetchers are not navigations, so they will never change the URL.

If this is still an issue it should be fixed and tested in React Router. Mind checking that out and opening a new issue there if needed?

authors: chaance kiliman machour smerchek zipme

repo: remix-run/remix

license: MIT

license_source: github-api


text:
Extract missing fields to MissingParameterException

Extract missing fields information from MissingParameterException in case of the exception.
Example:
public static class DefaultExceptionHandler implements IExceptionHandler {
    public List<Object> handleException(ParameterException ex, PrintStream out, Help.Ansi ansi, String... args) {
        if (ex instanceof MissingParameterException) {
            MissingParameterException missingParameterException = (MissingParameterException) ex;

            out.println("Missing parameters: " + missingParameterException.getMissingFields());
        } else if (ex instanceof UnmatchedArgumentException) {
            out.println("Unknown parameters:" + ex.getCommandLine().getUnmatchedArguments());
        } else {
            out.println(ex.getMessage());
        }

        return Collections.emptyList();
    }
}

Proposal:
Add the method getMissingFields that returns the associated missing fields.

I like this idea.
Note that the upcoming picocli v3.0 will have a different internal model. It no longer assumes that all parameters are fields. (To support annotating methods in addition to fields.)
So instead of returning a list of  java.reflection.Field objects, the new method should probably return objects from the model. Something like this:
public static class MissingParameterException extends ParameterException {
    public List<ArgSpec<?>> getMissingParameters() { ... }
}

source: gharchive/issue

authors: jcapsule remkop

repo: remkop/picocli


text:
Missing support for custom request options per request

When using Next.js App Router it is needed to be able to specify additional fetch paramaters per request such as revalidation tags and cache control headers. Is this not possible currently?
https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating

you can create different clients for each option

Sorry but that doesn't seem very efficient, that means creating a seperate client for each mutation and query. I forked the repo locally and added a second argument to queries and mutations which is a RequestInit object, would that be a good solution maybe?

creating a client isn't an inefficient task, usually you won't have many cache tags or different revalidation parameters, typically 2 or 3

authors: lucasprins remorses

repo: remorses/genql


text:
[CTD-271]-made several changes to the build script.

a) Removed the step for lintian checking when building a tar file - as I was getting failures on Android daemons due to expected linking problems.  Ultimate solution will be to use lintian overrides but that is rather complicated.  So for the time being I am not running lintian on tar builds.  Lintian still is executed on deb package builds and will still catch a lot of problems.
b) Fixed routine to clean up daemon binaries prior to doing build
c) Moved android target code closer to the beginning for quicker
debugging.
d) Fixed a few things associated with new output folder "./build"
e) Lintian errors print inline rather than in "less" - still need to
catch lintian errors and make them cause CI to fail.
f) Added lib folder to tar files (systemd startup service files)

OK I removed the commented code.

repo: remoteit/installer


text:
Bitbucket Integration

reference
#36 #50  #176 #229
Notes :-

bibucket returns uuids so i  had to add the migrations to change tables that contains provider and provider_id columns

without bitbucket token sent as a request header , it won't retrieve the current user private repos that he owns so i had to change the request helper method

i added the refresh_token column , cause bitbucket token expires after 1 hour as mentioned in the documentation , also i provided a screenshot of how the object will look like
refreshToken

in handleProviderCallback the user from socialite must be updated , to update his refresh_token and token

some of the methods uses version 1.0 of the api , because these end points aren't supported in version 2.0

in the readCollaborators if the repo owner is logged in and currently importing the repo into GitScrum the method will get all associated collaborators , otherwise , it won't get associated collaborators, and the reason for this as mentioned in the documentation priviliges  , Only the repository owner, a team account administrator, or an account with administrative rights on the repository can make this call

Hi @Te7a-Houdini,
Thanks for you PR!
Please, send your contact mail to renato.marinho@s2move.com
Cheers,
Renato Marinho

repo: renatomarinho/laravel-gitscrum


text:
fix unit-tests

@rennokki I fixed unit tests, waiting for release

Tagged 1.4.0
https://github.com/rennokki/befriended/releases/tag/1.4.0

repo: rennokki/befriended


text:
[bug] Issue with useAccount hook status after closing AppKit modal

Link to minimal reproducible example
https://affc.wow.art/
Summary
When using the AppKit modal to select a wallet provider that I don’t have installed (e.g., Rainbow Wallet) and then closing the AppKit modal, the status and isConnecting props from the useAccount hook (wagmi) remain at "connecting" and true. This behavior causes a bug in my app, which depends on these values being updated correctly.
I expect the status and isConnecting values to reset to "disconnected" and false after closing the modal, as they do when selecting MetaMask and closing it.
List of related npm package versions
@reown/appkit@1.0.1
@reown/appkit-adapter-wagmi@1.0.1
@wagmi/connectors@5.1.11
@wagmi/core@2.13.5
wagmi@2.12.12

I cannot reproduce is latest.
https://appkit-web-examples-react-wagmi.vercel.app/

authors: remibeaufils rtomas

repo: reown-com/appkit


text:
repetier host on osx with mono and linux version

Hi,
repetier host for osx is very outdated. isn't it possible to run the linux Version on a mac with mono installed?
slic3r is available native for osx.
regards
celevra

I already tried that and for some reason it doesn't work. It is launching but then I keep getting an exception in one of the timer functions. Would be great if this could be fixed though.

Even if it runs it is a hell. Forms library for mac which is used for the gui is still too buggy to use it.

authors: Flole998 celevra repetier

repo: repetier/Repetier-Host


text:
StatusInformers do not work across Namespaces

I've implemented StatusInformers for the multi-namespace app listed in replicatedhq/kotsadm#1352, but they do not appear to detect when the nginx pod in the hardcoded namespace becomes ready.

cc @allanyung

Closing this as it's been fixed

authors: dexhorthy marccampbell

repo: replicatedhq/kots


text:
Grid component not exported

I would like to be able to use the grid() component because I'm implementing custom addLevel() functionality but the grid() function does not appear to be exported.

There was a rework of how levels and grids work. Now there is a tile() component. Can check here

authors: lajbel sflanker

repo: replit/kaboom


text:
API docs are broken

https://repman.io/docs/api/
"Unable to render this definition
The provided definition does not specify a valid version field."

Is there any update on this?

authors: jyrkidn o-rey

repo: repman-io/repman


text:
Update Identity-SummarizeGuestTenantActivity.kql

Adding AppDisplayName on the summarize

Feel free to reject, but adding AppDisplayName so you can see what the Guest user is hitting in the tenant, rather than just that a user hit the portal.

Was actually looking at this query a few days ago and thinking it to update it to include applications, is this a better outcome though? This way the apps are tied back to the tenant id
//Summarize the domain names, the count of users and list of users for each guest tenant connecting to your Azure AD tenant
SigninLogs
| where TimeGenerated > ago (30d)
| project
TimeGenerated,
UserPrincipalName,
HomeTenantId,
AADTenantId,
Id,
ResourceTenantId,
ResourceIdentity,
UserId,
AppDisplayName
| where UserId != "00000000-0000-0000-0000-000000000000"
| where ResourceIdentity != ''
| where HomeTenantId != ''
| where HomeTenantId != AADTenantId
| extend GuestDomain = split(UserPrincipalName, '@')[-1]
| summarize
['Guest Domain Names']=make_set(GuestDomain),
['Distinct User Count']=dcount(UserPrincipalName),
['List of Guest Users']=make_set(UserPrincipalName),
['List of Applications']=make_set(AppDisplayName),
['Count of Applications']=dcount(AppDisplayName)
by HomeTenantId
| sort by ['Distinct User Count'] desc

Maybe?  I thought about that, but then you don't know which users were hitting which app.  There may be a better way to smash them together potentially, but if UserA hits both the portal and M365D, and UserB hits just the Portal, I want to know that delination.  May also be interesting to know if they got hit with a CAP.
Yours:

Mine:

Yeh I think both work to be honest, could make the case either way, adding the app in one way is definitely useful so lets merge it. You can ultimately still add additional filters after the summarization anyway

merged to main


text:
egui_tiles GC log warning log spam

Steps:

cargo rerun ./examples/assets
make sure the "hello" recording is selected
click the reset button
interact with viewer

causes lots of [2024-01-05T09:02:31Z WARN  egui_tiles::tiles] GC collecting tiles: [#15151604064148837086] spam

Oh yeah, egui_tiles should only print those warnings in debug builds.
But also, this indicates that we're doing something wrong, e.g. removing a tile from a container without deleting the tile from the Tiles

authors: Wumpf emilk

repo: rerun-io/rerun


text:
Pinhole image plane distance defaults to 0

Describe the bug
The pinhole frustum is by default not visible since the distance is set to 0.
To Reproduce
import rerun as rr
import numpy as np

rr.init("test", spawn=True)
rr.log("world/points", rr.Points3D(np.random.rand(500,3)))
rr.log("world/image", rr.Pinhole(focal_length=3, width=3, height=3))
rr.log("world/image", rr.Image(np.random.rand(3, 3, 3)))

Desktop (please complete the following information):

OS: Ubuntu 20.04

Rerun version

rerun_py 0.13.0-alpha.4 [rustc 1.74.0 (79e9716c9 2023-11-13), LLVM 17.0.4] x86_64-unknown-linux-gnu release-0.13.0-alpha.4 e7325d4, built 2024-02-06T10:51:01Z

Bisected to: https://github.com/rerun-io/rerun/commit/c73f9f6a4135718de5c21e72ed6fb03ff2eca638


text:
Feat: add loading dom prop

I would like to add the loading property for Domprops. This allows someone to add the loading property on an image for using html-based browser-native lazy loading.

Is that something we want to do on this PR?

Not necessarily. I +1'd this PR as I don't think it needs to do anything else. My comment was more about future improvements.

@Kingdutch @yawaramin sorry for the delay. I can't seem to merge this PR though.

Hi, I'm quite late for the party.
I'm wondering why the loading attribute is added into type domProps only, not into type props.

authors: LukasDeco mattdamon108 yawaramin

repo: rescript-lang/rescript-react


text:
Renaming tool removes ~ from named argument

First, thank you for shipping this useful feature!
I tried it on a named argument and it did the renaming but remove the ~ from the argument name.

Confirmed.
This seems viscose's doing, but the question is how to prevent it.

Looks like the location range includes the whole ~x, which is then replaced.
If it contained x only, it would not.

authors: bsansouci cristianoc

repo: rescript-lang/rescript-vscode


text:
Standalone package of bsrefmt

/usr/local/lib/node_modules/bs-platform takes 138 megabytes of space. Would it be hard to ship the code formatter, bsrefmt, as a separate package? I'm making a Docker container with many formatters in it, in which case >100M is a lot for one formatter.

@lassik so your docker image is to support the Reason syntax(legacy) or the new ReScript syntax?

Ideally both.
If I'm not mistaken, this is the current situation:

Reason is formatted using bsrefmt.
ReScript is formatted using bsc -format.

And both commands come from the npm bs-platform package.

authors: bobzhang lassik

repo: rescript-lang/syntax


text:
Pre-trained usage with CPU / without Nvidia GPU

Is there any chance of enabling the usage of the pre-trained model with a CPU / non-Nvidia GPU?
(-> RuntimeError: Found no NVIDIA driver on your system)
Or is there no hope due to cuda?
Thank you for the awesome work!

At least inference is posible over CPU :)

@4lvrz Oh, I actually missed the --device cpu flag and the automatic switch always failed for me with:
  File "/home/user/.local/share/pipx/venvs/resemble-enhance/lib/python3.11/site-packages/torch/cuda/__init__.py", line 298, in _lazy_init
    torch._C._cuda_init()
RuntimeError: Found no NVIDIA driver on your system. Please check that you have an NVIDIA GPU and installed a driver from http://www.nvidia.com/Download/index.aspx

Thank you for making me have another look.

repo: resemble-ai/resemble-enhance


text:
Fix bug in e2e tests that breaks deployment

See https://circleci.com/gh/resin-io-modules/resin-settings-client/23, from #48, which doesn't work. It fails with:
> resin-settings-client@3.8.3 test:e2e /home/circleci/project/$CIRCLE_WORKING_DIRECTORY/node-6
> ts-node tests/e2e/test.ts

> should override defaults given a user configuration that points to staging
ERROR: Command failed: ts-node /home/circleci/project/$CIRCLE_WORKING_DIRECTORY/node-6/tests/e2e/get.ts resinUrl
Error: Cannot find module '/home/circleci/project/~/project/node-6/tests/e2e/get.ts'

This same test passes fine in the previous build steps.
I think this is caused by the weird ~ in the middle of /home/circleci/project/~/project/node-6/, and that that's caused by the working_directory setting, which isn't used in the build steps. I have no way to test locally (very annoyingly), but I'm hopeful that using a simple cd instead will fix this.

Yeah, it's all pretty painful to play with or test, and not very well documented at all. The reason I added it was mainly just that it worked, and it seemed like that's the approach the docs encouraged (which isn't really a great reason).
Do feel free to ask questions like that in future if you have them though! It's good to help you fully understand what's going on here & why, and make sure I've done sensible things and thought everything through (which in this case, I hadn't!)

:crossed_fingers:

repo: resin-io-modules/resin-settings-client


text:
Add 0's at the beginning of Beagle images when using BMAPs

Etcher version: master
Operating system and architecture: all
Do you see any meaningful error information on DevTools? N/A

There are sometimes issues with the ROM bootloader on Beagle boards when you don't 0 out the first 1MB of the SD cards before writing the images using BMAPs. This is because the bootloader expects this and the BMAP tool sees this as sparse space. If you just write 0s to the first 1MB before writing the image, it'll boot fine every time.

@jviotti how about adding an offset config parameter?

@jadonk What is your current workaround? Do users flashing the image with bmaptool frequently encounter this issue? If the zeroes are explicitly being written in the first megabyte then bmaptool shouldn't interpret this as sparse space.
This sounds like the something that should be fixed from the image generation side, since it'd be a special code path in Etcher, but I'm open to further discussion.
@alexandrosm You mean an offset option to determine how much to zero out?

@jviotti exactly!
--
Alexandros Marinos
Founder & CEO, Resin.io
+1 206-637-5498
@alexandrosm
On Thu, Sep 1, 2016 at 7:09 PM, Juan Cruz Viotti notifications@github.com
wrote:

@jadonk https://github.com/jadonk What is your current workaround? Do
users flashing the image with bmaptool frequently encounter this issue?
If the zeroes are explicitly being written in the first megabyte then
bmaptool shouldn't interpret this as sparse space.
This sounds like the something that should be fixed from the image
generation side, since it'd be a special code path in Etcher, but I'm open
to further discussion.
@alexandrosm https://github.com/alexandrosm You mean an offset option
to determine how much to zero out?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/resin-io/etcher/issues/673#issuecomment-244265114,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABLUCLgLVoJ-TzIjkN2J1kTtOlfBDQjvks5ql4VagaJpZM4Jy0LN
.

It could be fixed as a bug in bmaptool, good point. The writing of zeros before writing with bmaptool is the work-around. I'll raise a bug there.

On Sep 1, 2016, at 10:09 PM, Juan Cruz Viotti notifications@github.com wrote:
@jadonk What is your current workaround? Do users flashing the image with bmaptool frequently encounter this issue? If the zeroes are explicitly being written in the first megabyte then bmaptool shouldn't interpret this as sparse space.
This sounds like the something that should be fixed from the image generation side, since it'd be a special code path in Etcher, but I'm open to further discussion.
@alexandrosm You mean an offset option to determine how much to zero out?
―
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@jviotti the current workaround was to stop publishing "*.bmap" files and just recommended users use etcher.io. ;)  I'll need to retest, as it was a few quarters ago, but the gist was:
On boards like the omap3-xm (dm3730), which don't officially support "raw boot", the bootloader was found in the first fat partition.  If i had a microSD card, that was flashed for a bbb (am335x which support raw boot, (the bootrom was 2 generations later then the dm3730's..)).  So if i then used bmaptool to then flash that same card for the omap3-xm, it would fail to boot.  However if i dd'ed the image directly to the microSD, it would boot fine.  At the time since Etcher.io just came out, i then recommended users use that instead.
My theory at the time, the dm3730 was tripping over something in the 'raw boot' sectors on the microSD.  Thus clearing out the first 1MB should fix that.
Regards,

I think the solution is actually to insert the zeroes into your image and
mark them in the bmap file as an area that has to be written. This can
probably be done with manual editing of the bmap file. However the easiest
would be if @jviotti makes a configurable "pre-padding offset" and solves
it for all of us, so you can have your etcher and bmaps too :P
--
Alexandros Marinos
Founder & CEO, Resin.io
+1 206-637-5498
@alexandrosm
On Sat, Sep 3, 2016 at 11:01 AM, Robert Nelson notifications@github.com
wrote:

@jviotti https://github.com/jviotti the current workaround was to stop
publishing "*.bmap" files and just recommended users use etcher.io. ;)
I'll need to retest, as it was a few quarters ago, but the gist was:
On boards like the omap3-xm (dm3730), which don't officially support "raw
boot", the bootloader was found in the first fat partition. If i had a
microSD card, that was flashed for a bbb (am335x which support raw boot,
(the bootrom was 2 generations later then the dm3730's..)). So if i then
used bmaptool to then flash that same card for the omap3-xm, it would fail
to boot. However if i dd'ed the image directly to the microSD, it would
boot fine. At the time since Etcher.io just came out, i then recommended
users use that instead.
My theory at the time, the dm3730 was tripping over something in the 'raw
boot' sectors on the microSD. Thus clearing out the first 1MB should fix
that.
Regards,
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/resin-io/etcher/issues/673#issuecomment-244560930,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABLUCJho8o73T7Eu36aNU7ffivMNpJccks5qmbXtgaJpZM4Jy0LN
.

Sounds good. I'll implement and keep you updated!

I've started work on this today. The plan is:

Add an option to control the amount of bytes that need to be zeroed out in https://github.com/resin-io-modules/bmapflash, our NodeJS bmap implementation module.

Extend the manifest.json to support a property to configure such option in https://github.com/resin-io-modules/etcher-image-stream.

Tied them up in Etcher itself.

This feature is complete, and will be merged very soon. The manifest.json file in an archive image may now include a bytesToZeroOutFromTheBeginning number option that as the name implies, signals the amount of bytes that should be zeroed out from the beginning of the drive before starting the bmap flash process. Setting that to 1 MB (expressed in bytes), should be enough for you!

authors: RobertCNelson alexandrosm jadonk jviotti

repo: resin-io/etcher


text:
Title Bar on Popup type windows (camera, door, iframe, etc) Cutting off Images and Pages

I recently updated to the latest version of TileBoard and I noticed that the popup style windows now have a title bar instead of just the X overlay in the upper right.
This is causing cameras, images and url content to be shifted down and the bottom cut off.
I've done some digging around and haven't yet come up with an easy solution.  How can I go about getting the photo fully contained in the windows like previously instead of cut off at the bottom?
Here's an example of how the older version worked.  The entire photo is visible:

Here's an example of the new version with the title bar.  The bottom of the photo is cut off:

What I came up with to workaround this was to add a custom css entry to set the title bar to 0px then copied the *-popup--close items from the old main.css to the new custom.css as *-popup-close to globally override what was in the main.css.  If there's a better way, please let me know.

You can control how image in camera is being sized using bgSize parameter.

I'm using bgSize: 'contain' which should always resize the image to make sure the entire thing is visible but with the title bar, the image gets pushed down 50px so the bottom is cut off by the popup element.
I tracked it down to the following height css properties, added them to custom.css and changed them from 100% to 100% - 50px.  Works perfectly now.  You lose a a bit of size with the title bar but the entire images are now visible.
.camera-popup--camera,
.door-entry-popup--camera,
.iframe-popup--camera {
  height: calc(100% - 50px);
}

.camera-popup--iframe,
.door-entry-popup--iframe,
.iframe-popup--iframe {
  height: calc(100% - 50px);
}

repo: resoai/TileBoard


text:
Fix awkward solution for merging popup defaults

Hey, I just stubled accros the new line in openPopup (introduced in #555 for reason of #553). Shouldn't the original use case actually be solved in the following way?
{
    // Appearance of actual tile not changed
    type: TYPES.SWITCH, // ... id etc...
    // Here we call openPopup with an explicit layout
    secondaryAction: function (item, entity) {
       this.$scope.openPopup(item, entity,
          {
             tileSize: 100,
             items: [
                {
                   type: TYPES.SWITCH,
                   subtitle: 'Kitchen1',
                   position: [1, 3],
                   id: 'light.f1_r1_light_base_fan',
                   title: 'Test',
                   icons: {
                      on: 'mdi-spin mdi-fan',
                      off: 'mdi-fan',
                   },
                   states: {
                      on: "On",
                      off: "Off"
                   },
                },
             ]
          }
       );
    },
 }

The even more explicit solution would be to defined the popup key in the actual item as follows:
{
    // Appearance of actual tile not changed
    type: TYPES.SWITCH, // ... id etc...
    // Define the popup key explicitly
    popup: {
             tileSize: 100,
             items: [
                {
                   type: TYPES.SWITCH,
                   subtitle: 'Kitchen1',
                   position: [1, 3],
                   id: 'light.f1_r1_light_base_fan',
                   title: 'Test',
                   icons: {
                      on: 'mdi-spin mdi-fan',
                      off: 'mdi-fan',
                   },
                   states: {
                      on: "On",
                      off: "Off"
                   },
                },
             ]
          },
    // Then call openPopup as usual
    secondaryAction: function (item, entity) {
       this.$scope.openPopup(item, entity);
    },
 }

I find it quite strange to allow creating items on the fly, because we rely in various places on those items being pointers into the CONFIG variable. The one issue fixed here is probably just a very small edge case. E.g., the layout is still not default-merged with #555.
The only thing that my two solutions above won't do as the original proposal, is that the popup title cannot be set this way. This should be introduced as a new feature, in order to not require users to go through the lengths of defining complete "ghost" tiles that will never be displayed themselves...
What do you think?

I find it quite strange to allow creating items on the fly, because we rely in various places on those items being pointers into the CONFIG variable.

I didn't know that it's not "allowed". openPopup is not really documented so I guess that it wasn't really disallowed either.
Not sure what you mean that there is a reliance on stuff being pointers. Can you give an example?
But all in all, I agree that it's a bit of a mess right now and I'm not entirely against forcing users to do it another way. Only that we probably should try to document better how this should be used. For example, having a popup property on a switch tile is not really allowed per-documentation so it wouldn't be clear right now.

You're right. There's nothing "disallowed", currently, :-)
As example: Take the caching with cacheInItem. It expects a persistent item to use for caching. (And it's also used by openPopup.) This won't work with on-the-fly items, would it? There's a lot of that stuff, even in the very original core code, e.g itemStyles, which set styles on the item.
I must admit, though, that creating the layout on the fly might cause similar headaches later on with the layout.items...
Maybe you're right again and it's not worth bothering too much. (Unless we start a general "clean-up" action.) Probably, an occasionally failing cache will not break anything. I just have the impression it's a bit over the top to have code in the codebase, specifically for a usecase which could be achieved in a cleaner (at least from CONFIG perspective) way.

authors: akloeckner rchl


text:
Spatial audio does not work with audio streams

I'm trying to use this as part of a voice chat feature in a game that implements CEF. However, it doesn't seem to apply any 3D effects to the voice stream. I tested a normal sound (ogg) and it worked as expected, with the audio becoming quieter as the player moved away from the other and the direction in the speakers changing as well. With an audio stream from a microphone, using window.URL.createObjectURL(stream) to get the source, it only plays the sound as if it were a normal sound - it doesn't matter where my player is in the game; the sound is the same volume and direction.
I'm curious as to if this even works with spatial audio. I tried using a different library (HowlerJS), but I read that audio streams are not supported with their spatial audio. Is this the same case here?

@benank and @drewbitllama I'd be so appreciative if you could clarify what you did here because I have the same question and shared my code in this other issue here.
Like you said, regular wav files worked well, but I couldn't get webcam streams to work (even with audioContext.createMediaStreamSource(video.srcObject); ).
I'm wondering what you did differently to get it to work.
I realize it's 3.3 years later, but any hints you can think of would be much appreciated! Thanks!

@ryancwalsh My use case was for a voice chat application, and the code is still available here. I honestly can't give you much more than the code because I don't remember anything else about it at this point. Hope this helps!

@benank Wow, I didn't really expect that you'd respond at all, and the fact that you responded so quickly is blowing me away, especially given that you're sharing code.
I really appreciate it. 😃
As it turns out, at the same time as you were typing this, I was able to figure it out based on your earlier hint: https://github.com/resonance-audio/resonance-audio-web-sdk/issues/34#issuecomment-819902221
Thank you so much!  This is really cool.

authors: benank ryancwalsh

repo: resonance-audio/resonance-audio-web-sdk


text:
Tweak DST tests

Moves the random failure down to local execution and only throws an exception after we create the durable promise. This prevents the possibility of failure before creating the promise (which may already be completed) which can result in non-progressing executions.

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

Comparison is base (468eeee) 61.92% compared to head (188910a) 62.45%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #44      +/-   ##
==========================================
+ Coverage   61.92%   62.45%   +0.52%
==========================================
  Files          18       20       +2
  Lines         851      863      +12
  Branches      222      225       +3
==========================================
+ Hits          527      539      +12
  Misses        296      296
  Partials       28       28

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

authors: codecov-commenter dfarr

repo: resonatehq/resonate-sdk-ts


text:
[Bug Fix] Silent recaptcha with challenge if confidence is low

Addresses: https://github.com/restarone/violet_rails/issues/916
Demo Video
https://user-images.githubusercontent.com/25191509/182033120-061b7e9a-836c-4f72-8fe4-ed5da43083ac.mp4

Acceptance Criteria :clipboard:

General Regression pass: Forms without any recaptcha :hourglass:
Recaptcha V2 on staging :hourglass:
Recaptcha V3 on staging :hourglass:


text:
Efficient way to show difference between snapshots

Addition to list snapshots: As a user I want to see the increments between snapshots (in files + file size).

What's the difference between this issue and https://github.com/restic/restic/issues/11? Sounds the same to me.

#11 should list the differences in detail, e.g. which files exactly have been added/removed/modified. The feature that is meant here should display statistical information. For example, after creating a new snapshot it would be nice to have some statistics on how many files were added/removed/changed and how much additional data was backed up.

I agree this would be a great feature. For example, here's what rdiff-backup reports at the end of the backup session:
--------------[ Session statistics ]--------------
StartTime 1476583301.00 (Sun Oct 16 04:01:41 2016)
EndTime 1476584169.19 (Sun Oct 16 04:16:09 2016)
ElapsedTime 868.19 (14 minutes 28.19 seconds)
SourceFiles 582240
SourceFileSize 25381847429 (23.6 GB)
MirrorFiles 581659
MirrorFileSize 25341511668 (23.6 GB)
NewFiles 1266
NewFileSize 145649503 (139 MB)
DeletedFiles 685
DeletedFileSize 21369080 (20.4 MB)
ChangedFiles 10234
ChangedSourceSize 931040607 (888 MB)
ChangedMirrorSize 1014985269 (968 MB)
IncrementFiles 12190
IncrementFileSize 100471118 (95.8 MB)
TotalDestinationSizeChange 140806879 (134 MB)
Errors 0
--------------------------------------------------

The most useful of all these statistics is TotalDestinationSizeChange, which reports how much data was added to the repository in the particular backup run. When you monitor this metric on a daily basis, you get a feeling of how much data typically changes in between backup runs. If the number suddenly jumps, it typically means that there's some new cache or unwanted folder that should be excluded.

repo: restic/restic


text:
add alibaba cloud oss backend in restic

Restic supports Alibaba Cloud OSS as a backend. Export the Alibaba Cloud access key and secret as follows:
$ export ALIBABA_CLOUD_ACCESS_KEY_ID=<ACCESS_KEY_ID>
$ export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<ACCESS_KEY_SECRET>

Afterwards you can use the oss: backend type to initialize a repository in the bucket foo at the root path:
$ restic -r oss:oss-cn-hangzhou.aliyuncs.com/foo init
enter password for new backend:
enter password again:
created restic repository 62494f11a1 at oss:oss-cn-hangzhou.aliyuncs.com/foo
[...]

The number of concurrent connections to the OSS service can be set with the
-o oss.connections=10 switch. By default, at most five parallel connections are
established.

@haoshuwei Your initial post in this issue states that restic does support Alibaba. This isn't the case. I presume you wanted to say that with your PR, it does.
There is no need for a new backend in restic, because you can already use Alibaba through the clone backend. Introducing another backend in restic to support Alibaba means additional maintenance for a feature that is already supported.
Please see https://restic.readthedocs.io/en/latest/030_preparing_a_new_repo.html#other-services-via-rclone for general instructions on how to use the clone backend, which then gives you access to Alibaba.

@ncw wrote in this post that Alibaba OSS is S3 compatible. Maybe adding a note to the documentation of restic & Amazon S3 would be enough to make this work?
@haoshuwei Can you verify that Alibaba OSS works with the S3 backend?

Would be best if this was done through https://github.com/restic/restic/issues/2490 :)

@ncw wrote in this post that Alibaba OSS is S3 compatible. Maybe adding a note to the documentation of restic & Amazon S3 would be enough to make this work?
@haoshuwei Can you verify that Alibaba OSS works with the S3 backend?

Alibaba OSS now only support Virtual hosted style (S3 v2), so it has some problems when using restic.

@haoshuwei Your initial post in this issue states that restic does support Alibaba. This isn't the case. I presume you wanted to say that with your PR, it does.
There is no need for a new backend in restic, because you can already use Alibaba through the clone backend. Introducing another backend in restic to support Alibaba means additional maintenance for a feature that is already supported.
Please see https://restic.readthedocs.io/en/latest/030_preparing_a_new_repo.html#other-services-via-rclone for general instructions on how to use the clone backend, which then gives you access to Alibaba.

Yes, I mean that with my PR, restic can support alibaba cloud oss in the way restic -r oss:oss-cn-hangzhou.aliyuncs.com/foo init.  It's right that rclone can also do this, but it involves a rclone binary file and an established configuration. In addition, I'm working on the velero project to backup files to oss through restic, it is convenient to use restic directly instead of involving a new rclone tool.

I suggest that we should supoort oss backend directly in restic instead of using another rclone tool, releated PR #2521. Maybe in the future, restic can support a plugin architecture to let users contribute and maintain there own backend

I really expect that I can add the Alibaba Cloud Object Storage which is already widely used just like Microsoft Azure Blob Storage and Google Cloud Storage.

Alibaba OSS now only support Virtual hosted style (S3 v2), so it has some problems when using restic.

Can you elaborate? What are the exact problems? Are you effectively saying that clone doesn't work with ACOS?

Alibaba OSS now only support Virtual hosted style (S3 v2), so it has some problems when using restic.

Can you elaborate? What are the exact problems? Are you effectively saying that clone doesn't work with ACOS?

these are the commands and outputs below:
$ export RESTIC_REPOSITORY="s3:https://oss-cn-hangzhou.aliyuncs.com/restic-demo"
$ export AWS_ACCESS_KEY_ID=xxx
$ export AWS_SECRET_ACCESS_KEY=xxx
$ export RESTIC_PASSWORD=xxx
$ restic init
Fatal: create repository at s3:https://oss-cn-hangzhou.aliyuncs.com/restic-demo failed: client.BucketExists: Please use virtual hosted style to access.

as I say above, Alibaba OSS now only support Virtual hosted style (S3 v2), so if i change to use Virtual hosted style:
$ export RESTIC_REPOSITORY="s3:https://restic-demo.oss-cn-hangzhou.aliyuncs.com"
$ restic init
Fatal: create repository at s3:https://restic-demo.oss-cn-hangzhou.aliyuncs.com failed: s3: bucket name not found

restic doesn't support Virtual hosted style yet.

it looks as though the path-style bucket access is going away in less than a year:

Support for the path-style model continues for buckets created on or before September 30, 2020. Buckets created after that date must be referenced using the virtual-hosted model.

the existing s3 backend will have to either be updated to support the virtual-hosted model, or deprecated in favour of rclone I guess.
either way, probably no point in adding a special backend just for alibaba cloud.

@haoshuwei And what if you use it through/with clone? Are you saying that doesn't work either?

@haoshuwei And what if you use it through/with clone? Are you saying that doesn't work either?

rclone works with oss， but it involves a binary file and an established configuration which is inconvenient to be integrated by other tools, such as velero project.

it looks as though the path-style bucket access is going away in less than a year:

Support for the path-style model continues for buckets created on or before September 30, 2020. Buckets created after that date must be referenced using the virtual-hosted model.

the existing s3 backend will have to either be updated to support the virtual-hosted model, or deprecated in favour of rclone I guess.
either way, probably no point in adding a special backend just for alibaba cloud.

AlibabaCloud is No.3 biggest IaaS provider world wide, and it is most popular cloud in Asia.  See Gartner report. It is why @haoshuwei  contribute object store backend oss of AlibabaCloud to project restic to make  end users of cloud easily leverage tools like restic at Asia. Considering the huge users numbers of Alibabacloud from Asia, pls re-think about PR #2521 .

@smlx scott, would you like to review PR #2521 , thanks!

Getting restic to support virtual hosted style would be easier than merging an entire backend wouldn't it?  That is the approach I took with rclone.  Rclone uses the AWS SDK and it is just a matter of using WithS3ForcePathStyle.
I think to make this work with the minio s3 sdk restic uses, you'd have to set BucketLookup in Options to BucketLookupDNS or BucketLookupPath which should be a couple of lines of code only.

@haoshuwei thank you very much for your contribution! Unfortunately, adding a new backend to restic comes with a high maintenance burden, which remains with us, the developers and maintainers. We're very reluctant to do that if there's a viable alternative.
In this case I fully agree with @ncw, we should fix the s3 backend so that it can be used with Alibaba. That's much easier to do. Then users have two ways of using Alibaba: either via rclone or via the native s3 backend.
So, if you're interested in making this work, please look into how minio-go (the s3 library we're using for accessing s3) can be used with Alibaba. @ncw provided some helpful hints.
Since I don't have an account with Alibaba, I cannot test this myself.
I'm closing this issue for now, we prefer not adding a new backend but rather fixing the s3 backend. I've created issue #2528 for that. Please feel free to add further comments. Thanks!

authors: cuericlee dimejo fd0 haoshuwei ncw rawtaz smlx


text:
unlock doesn't work, but telling "successfully removed"

Output of restic version
restic 0.12.0 compiled with go1.15.8 on windows/386
How did you run restic exactly?
I have a lock, the following command shows details and give hint what to do:
PS T:> restic -r restic-Stephan-local --password-file "C:/Users/steph/restic/pwrestic.txt" snapshots
repository bf940734 opened successfully, password is correct
unable to create lock in backend: repository is already locked exclusively by PID 13124 on Ladybird by LADYBIRD\Stephan (UID 0, GID 0)
lock was created at 2021-05-10 13:01:09 (18m21.169303s ago)
storage ID 985380f4
the unlock command can be used to remove stale locks
try to unlock, tells me "success":
PS T:> restic -r restic-Stephan-local --password-file "C:/Users/steph/restic/pwrestic.txt" unlock
repository bf940734 opened successfully, password is correct
successfully removed locks
but lock still available:
PS T:> restic -r restic-Stephan-local --password-file "C:/Users/steph/restic/pwrestic.txt" snapshots
repository bf940734 opened successfully, password is correct
unable to create lock in backend: repository is already locked exclusively by PID 13124 on Ladybird by LADYBIRD\Stephan (UID 0, GID 0)
lock was created at 2021-05-10 13:01:09 (30m11.1639394s ago)
storage ID 985380f4
the unlock command can be used to remove stale locks
after waiting 30min, it worked:
PS T:> restic -r restic-Stephan-local --password-file "C:/Users/steph/restic/pwrestic.txt" unlock
repository bf940734 opened successfully, password is correct
successfully removed locks
PS T:> restic -r restic-Stephan-local --password-file "C:/Users/steph/restic/pwrestic.txt" snapshots
repository bf940734 opened successfully, password is correct
ID        Time                 Host        Tags        Paths
...

What backend/server/service did you use to store the repository?
local
Expected behavior
if unlock was not successful, don't tell the user it is.
give the reason, why unlock does not work (here, I guess, restic thinks it is a "lock" and not a "stale lock")
give a hint to use parameter "--remove-all" if the lock is not categorized as "stale"
if the process is dead (inbetween the 30 min), handle "lock" as a "stale lock" (like described in the documentation)

Actual behavior
it isn't unlocked, even if restic tells so.
it can be unlocked after 30 min
it can be unlocked with parameter "remove-all"
I checked for  the PID (which is related to the lock) on my windows system, but I didn't find that PID running.

Steps to reproduce the behavior

Do you have any idea what may have caused this?
maybe on windows, the check for dead PID does not work properly (but that shouldn't result in an message "successfully removed locks"
Do you have an idea how to solve the issue?
Did restic help you today? Did it make you happy in any way?
This is my first report in GitHub, and I'm still not familiar with it. Please give me a hint, if I did something wrong or stupid.
Of course: Restic is fantastic and and easy to use (even if I'm comming from the windows side and do not use the command line very often)
Hope, I can help to make restic a little better with my feedback

@rawtaz: after installing go and compiling a debug binary (it was not so easy, because the description focus on linux), I was able to create a log-file. At first, I catched the situation (the lock was not unlocked), but at the moment, I can not reproduce any more. Please give me some time for futher investigation.

here is the debug log

beginning line 2, it's  working like expected (less than 30 min old, but PID not in use) --> lock was removed
beginning line  36, the lock is not removed. But I do not find the PID in the list  (I used command "tasklist"), and I did nothing different ;), I tried it many times. It's a kind of random.

But line 30 might be a hint:
30  2021/05/12 10:21:45 restic/lock_windows.go:20	restic.Lock.processExists	14	error searching for process 11424: OpenProcess: Falscher Parameter.

"Falscher Parameter", means "wrong parameter", it's the original output from restic, not an addition by me!
maybe there is a mismatch of the type of the variable (which lead to randomly result of processExists)
02  2021/05/12 10:21:45 restic/main.go:95	main.main	1	main []string{"D:\\work\\restic\\restic-master20210511\\restic-master\\restic.exe", "-r", "t:\\restic-Stephan-local", "unlock"}
03  2021/05/12 10:21:45 restic/main.go:96	main.main	1	restic 0.12.0 compiled with go1.16.4 on windows/amd64
04  2021/05/12 10:21:45 restic/global.go:669	main.open	1	parsing location t:\restic-Stephan-local
05  2021/05/12 10:21:45 restic/global.go:544	main.parseConfig	1	opening local repository at local.Config{Path:"t:\\restic-Stephan-local", Layout:""}
06  2021/05/12 10:21:45 local/local.go:33	local.Open	1	open local backend at t:\restic-Stephan-local (layout "")
07  2021/05/12 10:21:45 backend/layout.go:139	backend.ParseLayout	1	parse layout string "" for backend at t:\restic-Stephan-local
08  2021/05/12 10:21:45 backend/layout.go:99	backend.DetectLayout	1	detect layout at t:\restic-Stephan-local
09  2021/05/12 10:21:45 backend/layout.go:117	backend.DetectLayout	1	found default layout at t:\restic-Stephan-local
10  2021/05/12 10:21:45 backend/layout.go:163	backend.ParseLayout	1	layout detected: <DefaultLayout>
11  2021/05/12 10:21:45 local/local.go:198	local.(*Local).Stat	1	Stat <config/>
12  2021/05/12 10:21:45 repository/index.go:441	repository.(*Index).Finalize	1	finalizing index
13  2021/05/12 10:21:45 local/local.go:242	local.(*Local).List	1	List key
14  2021/05/12 10:21:45 repository/key.go:150	repository.SearchKey.func1	1	trying key "1b435f99d407413cac1906c595600c0f39493a3aef1f5e50add65cfa63ad792d"
15  2021/05/12 10:21:45 local/local.go:167	local.(*Local).openReader	1	Load <key/1b435f99d4>, length 0, offset 0
16  2021/05/12 10:21:45 repository/key.go:163	repository.SearchKey.func1	1	successfully opened key 1b435f99d407413cac1906c595600c0f39493a3aef1f5e50add65cfa63ad792d
17  2021/05/12 10:21:45 repository/repository.go:89	repository.(*Repository).LoadAndDecrypt	1	load config with id 0000000000000000000000000000000000000000000000000000000000000000
18  2021/05/12 10:21:45 local/local.go:167	local.(*Local).openReader	1	Load <config/0000000000>, length 0, offset 0
19  2021/05/12 10:21:45 cache/cache.go:110	cache.New	1	using cache dir C:\Users\steph\AppData\Local\restic\bf94073462a2d27b380d98fdbf063657279b3b9963a07001bf77fb2eb54cdc64
20  2021/05/12 10:21:45 repository/repository.go:70	repository.(*Repository).UseCache	1	using cache
21  2021/05/12 10:21:45 cache/cache.go:237	cache.OlderThan	1	0 old cache dirs found
22  2021/05/12 10:21:45 local/local.go:242	local.(*Local).List	9	List lock
23  2021/05/12 10:21:45 restic/lock.go:332	restic.ForAllLocks.func2	14	load lock f644f610ffb02c438880bc830359850435f4df52a00eaf00a9a7fd2171eb5d5f
24  2021/05/12 10:21:45 repository/repository.go:89	repository.(*Repository).LoadAndDecrypt	14	load lock with id f644f610ffb02c438880bc830359850435f4df52a00eaf00a9a7fd2171eb5d5f
25  2021/05/12 10:21:45 cache/backend.go:196	cache.(*Backend).Load	14	Load(<lock/f644f610ff>, 0, 0): delegating to backend
26  2021/05/12 10:21:45 local/local.go:167	local.(*Local).openReader	14	Load <lock/f644f610ff>, length 0, offset 0
27  2021/05/12 10:21:45 restic/lock.go:186	restic.(*Lock).Stale	14	testing if lock PID 11424 on Ladybird by LADYBIRD\Stephan (UID 0, GID 0)
28  lock was created at 2021-05-12 10:18:39 (3m6.0292564s ago)
29  storage ID f644f610 for process 11424 is stale
30  2021/05/12 10:21:45 restic/lock_windows.go:20	restic.Lock.processExists	14	error searching for process 11424: OpenProcess: Falscher Parameter.
31  2021/05/12 10:21:45 restic/lock.go:208	restic.(*Lock).Stale	14	could not reach process, 11424, lock is probably stale
32  2021/05/12 10:21:45 cache/backend.go:37	cache.(*Backend).Remove	14	cache Remove(<lock/f644f610ff>)
33  2021/05/12 10:21:45 local/local.go:227	local.(*Local).Remove	14	Remove <lock/f644f610ff>
34  2021/05/12 10:21:45 restic/lock.go:119	main.unlockAll	1	unlocking 0 locks
35
36  ##lock stays:
37  2021/05/12 12:06:51 restic/main.go:95	main.main	1	main []string{"D:\\work\\restic\\restic-master20210511\\restic-master\\restic.exe", "-r", "t:\\restic-Stephan-local", "unlock"}
38  2021/05/12 12:06:51 restic/main.go:96	main.main	1	restic 0.12.0 compiled with go1.16.4 on windows/amd64
39  2021/05/12 12:06:51 restic/global.go:669	main.open	1	parsing location t:\restic-Stephan-local
40  2021/05/12 12:06:51 restic/global.go:544	main.parseConfig	1	opening local repository at local.Config{Path:"t:\\restic-Stephan-local", Layout:""}
41  2021/05/12 12:06:51 local/local.go:33	local.Open	1	open local backend at t:\restic-Stephan-local (layout "")
42  2021/05/12 12:06:51 backend/layout.go:139	backend.ParseLayout	1	parse layout string "" for backend at t:\restic-Stephan-local
43  2021/05/12 12:06:51 backend/layout.go:99	backend.DetectLayout	1	detect layout at t:\restic-Stephan-local
44  2021/05/12 12:06:51 backend/layout.go:117	backend.DetectLayout	1	found default layout at t:\restic-Stephan-local
45  2021/05/12 12:06:51 backend/layout.go:163	backend.ParseLayout	1	layout detected: <DefaultLayout>
46  2021/05/12 12:06:51 local/local.go:198	local.(*Local).Stat	1	Stat <config/>
47  2021/05/12 12:06:51 repository/index.go:441	repository.(*Index).Finalize	1	finalizing index
48  2021/05/12 12:06:51 local/local.go:242	local.(*Local).List	1	List key
49  2021/05/12 12:06:51 repository/key.go:150	repository.SearchKey.func1	1	trying key "1b435f99d407413cac1906c595600c0f39493a3aef1f5e50add65cfa63ad792d"
50  2021/05/12 12:06:51 local/local.go:167	local.(*Local).openReader	1	Load <key/1b435f99d4>, length 0, offset 0
51  2021/05/12 12:06:51 repository/key.go:163	repository.SearchKey.func1	1	successfully opened key 1b435f99d407413cac1906c595600c0f39493a3aef1f5e50add65cfa63ad792d
52  2021/05/12 12:06:51 repository/repository.go:89	repository.(*Repository).LoadAndDecrypt	1	load config with id 0000000000000000000000000000000000000000000000000000000000000000
53  2021/05/12 12:06:51 local/local.go:167	local.(*Local).openReader	1	Load <config/0000000000>, length 0, offset 0
54  2021/05/12 12:06:51 cache/cache.go:110	cache.New	1	using cache dir C:\Users\steph\AppData\Local\restic\bf94073462a2d27b380d98fdbf063657279b3b9963a07001bf77fb2eb54cdc64
55  2021/05/12 12:06:51 repository/repository.go:70	repository.(*Repository).UseCache	1	using cache
56  2021/05/12 12:06:51 cache/cache.go:237	cache.OlderThan	1	0 old cache dirs found
57  2021/05/12 12:06:51 local/local.go:242	local.(*Local).List	13	List lock
58  2021/05/12 12:06:51 restic/lock.go:332	restic.ForAllLocks.func2	51	load lock 7648f6c6794ee3d1e8d321563d02d18447883b8d326373de6f0cb2c999d61b94
59  2021/05/12 12:06:51 repository/repository.go:89	repository.(*Repository).LoadAndDecrypt	51	load lock with id 7648f6c6794ee3d1e8d321563d02d18447883b8d326373de6f0cb2c999d61b94
60  2021/05/12 12:06:51 cache/backend.go:196	cache.(*Backend).Load	51	Load(<lock/7648f6c679>, 0, 0): delegating to backend
61  2021/05/12 12:06:51 local/local.go:167	local.(*Local).openReader	51	Load <lock/7648f6c679>, length 0, offset 0
62  2021/05/12 12:06:51 restic/lock.go:186	restic.(*Lock).Stale	51	testing if lock PID 12572 on Ladybird by LADYBIRD\Stephan (UID 0, GID 0)
63  lock was created at 2021-05-12 12:05:23 (1m28.4005956s ago)
64  storage ID 7648f6c6 for process 12572 is stale
65  2021/05/12 12:06:51 restic/lock.go:212	restic.(*Lock).Stale	51	lock not stale
66  2021/05/12 12:06:51 restic/lock.go:119	main.unlockAll	1	unlocking 0 locks

Thanks for good information! It's pretty peculiar/interesting. I've had limited time but a quick look yields:

internal/restic/lock.go calls os.FindProcess with a proper parameter value (we see the valid value of l.PID in the error message and the type of that argument is an int as per Lock.PID).
os.findProcess(pid) is then what's being called, and also what returns the error we get.
I noticed that the internal/restic/lock_unix.go is deferring proc.Release() while internal/restic/lock_unix.go does not, in case that is relevant. I'm not sure if that could cause a race condition with the Process (proc), I'd guess no since this and the related Go code seems sequential. But might be good to see if we should wrap this and perhaps also move the defer calls for both unix and windows to right after the os.FindProcess call?
OpenProcess documentation mention ERROR_INVALID_PARAMETER in relation to specifying "System Idle Process (0x00000000)" as the process. We're not specifying that process, but here and here it sounds like Windows' OpenProcess may give an ERROR_INVALID_PARAMETER for when the specified process doesn't exist. This would make sense, that if what you ask to open isn't there, it's considered invalid.

I would like to have it verified that the last point above is indeed the case - if it is, then it would seem sensible to check for that specific error and if it's returned we treat that as the process not existing and returning false in processExists() (still checkin for other errors as usual though). I'd love others' input on this.

I don't know that this is related but it is happening on my oracle linux os with arm64.
restic version output is restic 0.12.1 compiled with go1.16.6 on linux/arm

@Gaibhne Restic first has to detect that a lock file is stale before it will be removed. And that detection just relies on the lock being too old, which currently uses a timeout of 30 minutes. On the same host, restic can check whether the process which created the lock is still running and can clean up the lock if that is not the case. So what you're seeing sounds like expected behavior (except for the somewhat mislead error message)

I ran into this issue as well, and the lock was less than 30 minutes old so I had to remove the file, as unlock did not do anything (although it was still reporting success).

authors: MichaelEischer busybee63 ivoanjo rawtaz tomocrafter


text:
faster restorer musings, very much WIP

What is the purpose of this change? What does it change?
Proof-of-concept of faster restore implementation. This is meant to illustrate the idea and discuss its merits.
RESTORE_concurrent-pack-order.md has description of the POC goals and implementation
Was the change discussed in an issue or in the forum before?
Yes, see #1605.
Checklist

[x] I have read the Contribution Guidelines
[ ] I have added tests for all changes in this PR
[ ] I have added documentation for the changes (in the manual)
[ ] There's a new file in changelog/unreleased/ that describes the changes for our users (template here)
[x] I have run gofmt on the code in all commits
[ ] All commit messages are formatted in the same style as the other commits in the repo
[ ] I'm done, this Pull Request is ready for review

I've just skimmed over the description document, but didn't find any info on that: Does the implementation still work if there's no cache available?

The POC restorer uses temporary (as in ioutil.TempFile) disk space to store in-progress pack files, and this is what I called "pack cache" in the doc. In most cases only a small number of temporary files should be needed (one per worker thread, basically), but there is a hard limit on the amount of temp disk space used too. The temporary files are deleted after their blobs are used up by the restorer.
The POC restorer does not currently use existing restic cache (as in --cache-dir). We can decide if and how the new restorer should use the existing cache, but I believe this is relatively minor implementation detail and would like to postpone this discussion until after we agree (or not) on overall restorer approach.

FYI, I refactored the POC to add some structure to the code. It's still far from ready, let alone pretty, but hopefully the code is now little easier to follow.

Finally got around to do some adhoc performance testing.
Here is my setup:

I have small-ish ~2GiB repository with little under 1800 JPEG files.
I use OneDrive repository backend, which I think is on par with S3 and GDrive in terms of single-threaded response time and download speed.
I have 50Mbps DSL connection to the Internet. I typically get ~6MB/s download speed from good remote servers.
I am running the test on pretty old 2011 MacBook Pro with SSD.
I am running the following restore command:

     rm -rf /tmp/restic-restore; time ./restic restore --target=/tmp/restic-restore latest

The original/unoptimized restore took 43m41.723s, which works out to ~778KB/s and way below my Internet max download speed of 6MB/s.
The optimized POC restore implementation took 5m6.998s, or  ~6671KB/s, which is actually little faster than my Inet connection speed, likely thanks to restic dedup behaviour and MiB-vs-MB math :-).
And here is what the original and POC restore look like in my internet router "Download Bandwidth Graph":

As you can see, my Inet connection is maxed out by POC implementation, so it'll likely go faster on faster connections. The original implementation restore time is almost certainly dominated by the server response time and will likely take similar time on faster connections.

@fd0 does this mean you agree with the approach in general? I am happy to work on the "real" implementation if you think the POC is convincing enough to give it a try.

Oh yes, please go ahead! :)

This POC has served its purpose, please see #1719 with more "production ready" implementation.


text:
Jabref import - groups lost

Please verify all of the below before submitting:

you have picked the right category for the issue in the previous screen. Y 5.0.95.1

You are on the latest release of Zotero Y 5.2.110

in the Zotero addons screen you can see that you have the latest release of BBT - Y 5.2.110 (https://github.com/retorquere/zotero-better-bibtex/releases/latest)

you are posting a single bug or feature request. Y

the issue has a subject that succinctly describes the problem or question. Y

you are available for follow-up questions and testing. Y

you have attached a copy of the BibTeX you were trying to import to this issue. Y

you have included an error-report ID here generated by restarting Zotero with debugging enabled (Help -> Debug Output Logging -> Restart with logging enabled), reproducing your problem, and selecting "Report Better BibTeX error" from the help menu.

If you tried to submit BBT a debug report and ended up with an ID looking like D<number>, that is a Zotero debug report, which I cannot access. Please follow the instructions exactly -- your debug report ID should end in -euc or -apse.
I AM NOT KIDDING ABOUT THIS. PLEASE INCLUDE A DEBUG LOG. I WILL END UP ASKING FOR IT ANYWAY
Picking the right issue category is really important. Each category (Export, General error, Import, Key generation, Question) has different instructions for gathering the data necessary required to resolve the issue you are experiencing
The error-report is important; it gives me your current BBT settings and a log of what Zotero was doing at the time of import. Without it, I'm effectively blind.
**Report ID:**6LEKBRAI-euc (Jabref3.4)  YNZ58FZU-euc (Jabref5.2)
Full Bib(La)TeX item you are trying to import:
group_test_Jabref.zip
Expected behavior:
Imported groups should be sub-collections in Zotero.
Same behaviour with Jabref 3.4 file format and Jabref 5.2 file format.
Actual behavior:
Imported groups are just in a single collection in Zotero.

please try build 324

please try build 324

Many thanks for the prompt fixes.
324 seems to work with both the minimal bib files I sent, However still
a few issues on my large real bib file. I'm trying to work out which
bits cause the problems and will let you know. So far the groups are
imported, from the jabref 3 format but each group contains far more
files than they should. The Jabref 5 import works better, but I have
found a few entries (so far) that got into the wrong group for no
obvious reason.
I only just saw that there was a 329 so will try that and report any
issues. It may take a few days as my full bib file takes quite a while
to import and has nearly 3000 entries, and I need to fiddle with it to
see which entries are related to the problems.
Regards
John Dawson
Deputy Head, Communications Technology Research group
Careers and Placements Coordinator
Please book meetings via my google calendar
/------------------------------------------------------------------
| J. F. Dawson                      Phone: 01904 322356            |
| Dept. of Electronic Engineering                                  |
| University of York                e-mail: john.dawson@york.ac.uk |
| Heslington                 /\    /\    /\    /\    /\    /\      |
| York                      /  \  /  \  /  \  /  \  /  \  /  \     |
| YO10 5DD www.york.ac.uk/electronic-engineering/staff/john_dawson |
------------------------------------------------------------------/
Disclaimer: www.york.ac.uk/docs/disclaimer/email.htm
On 31/01/2021 18:44, Emiliano Heyns wrote:

Reopened #1730
https://github.com/retorquere/zotero-better-bibtex/issues/1730.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/retorquere/zotero-better-bibtex/issues/1730#event-4270629401,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKAEZFV56GTQKUW5IVUUUS3S4WQKDANCNFSM4WXMGDDQ.

You can just give me the whole bib file. If you can point out one entry that doesn't end up where you expect it to, I have a test case to work with.

You can just give me the 3000 entry file and point out a single point that's wrong after import. That is enough lead for a fix, usually.

Hello?

closing for inactivity.

authors: jfdawson retorquere

repo: retorquere/zotero-better-bibtex


text:
No pandoc citation export option

Hey, I'm probably missing something silly here, but I just installed BBT (1.6.56), and I don't have any pandoc export options. I do have a bunch of "better bib..." options. Thanks.

You're looking for either "Better CSL JSON", which replaced "Pandoc JSON", or "Better BibTeX Quick Copy", which replaced "Pandoc Citations". I've updated the docs, they didn't reflect these changes yet.

Awesome, thanks!

authors: michaellevy retorquere


text:
README: replace freenode by Libera

Yet another one i forgot..

ACK ca31eb0

repo: revault/practical-revault


text:
main.go:14: revel redeclared as imported package name

Error log:
ERROR 2015/06/07 18:16:43 build.go:101: # github.com/xxx/xxxx/app/tmp
go/src/github.com/xxx/xxxx/app/tmp/main.go:13: revel redeclared as imported package name
previous declaration at go/src/github.com/xxx/xxxx/app/tmp/main.go:7
main.go content:
7	"github.com/revel/revel"
8	_ "github.com/xxx/xxxx/app"
9	controllers "github.com/xxx/xxxx/app/controllers"
10	tests "github.com/xxx/xxxx/tests"
11	controllers1 "github.com/revel/modules/static/app/controllers"
12	_ "github.com/revel/modules/testrunner/app"
13	controllers0 "github.com/revel/modules/testrunner/app/controllers"
14	revel "github.com/revel/revel"
My code:
controllers/app.go:
type App struct {
BaseController
}
func (c App) Index() revel.Result {
return c.Render()
}
controllers/base.go:
//.....
func init() {
revel.InterceptMethod((*BaseController).Before, revel.BEFORE)
}
type BaseController struct {
*revel.Controller
}
func (c *BaseController) CheckValidate(res revel.Result) revel.Result{
if res != nil{
return res;
}
return nil
}
//.....
If remove function "CheckValidate" or remove param "res revel.Result", All works well.

7 and 14 are identical to the line, remove one of them

If you have more helpful info, please reopen. Thanks.

authors: baiyuxiong brendensoares zhuharev

repo: revel/revel


text:
Template engine update

This is an update on PR https://github.com/revel/revel/pull/1003 , to make it work with the current development branch. I left the interface the same but modified the main loader somewhat so that the loader would behave better in mixed scenarios which would likely be a lot of the cases

Proof of concept app https://github.com/revel/examples/pull/13
Pongo2 Module https://github.com/revel/modules/pull/22 (this I feel could be better implemented)

Added features

Module load order can be specified, this is crucial to ensure the correct views are loaded as desired, ordering is simplistic rather then specifying modules like

module.pongo2=github.com/revel/modules/pongo2
module.static=github.com/revel/modules/static
module.jobs=github.com/revel/modules/jobs

You now do
module.1.pongo2=github.com/revel/modules/pongo2
module.2.static=github.com/revel/modules/static
module.3.jobs=github.com/revel/modules/jobs

The stuff between the module and name is dropped when module is loaded

Specify engines using single config option template.engines=pongo2,go Priority given to first engine on templates but if that fails it will try the secondary and third ones in the list.

shebang added to template files, If a template file starts with a shebang, then it is inspected and the engine is used from the shebang line. for example #! go on the first line would default to the go template engine to be used to compile that file

why not use file extension name?
.gohtml -> go template engine
.pghtml - > pongo2 template engine
or
.go.html -> go template engine
.pg.html - > pongo2 template engine

mixed template is bad idea.

Yes @runner-mei adding extension based switching sounds like a good ideas as well.

Changing extention names if a really bad idea imho, hate the idea.

Re modules ordering (dont understand why) but can we step in 10's instead,
so we can stick ones in middle, bit like a run level kinda thing (eg dovecot config)
eg
module.10.pongo2=github.com/revel/modules/pongo2
module.20.static=github.com/revel/modules/static
module.22.my_custom=github.com/me/revel_custom
module.30.jobs=github.com/revel/modules/jobs

I think the filename style (pg.html, etc) is a better choice and matches the way that rails handles preprocessors / templates.
I would suggest if we're going to do this, that we rearrange them a bit. If a page is html, and uses pongo2, then the filename would be: index.html.pongo2 (I think the extensions should match the module name)
Thoughts?

is the load order necessary? Does the config file get interpreted non-deterministically (does the order in the config not correspond to the order in which it's interpreted into a config object)?

@pedromorgan You can step by whatever means you want between modules, as long as it resolves back to something that is sorted analphabetic it will be fine.
@shawncatz I was trying to avoid doing modification to the end of the filename, since a lot of editors are extension type enabled putting in something like foo.html.pongo2 may not work. @runner-mei suggested an extension format like foo.pongo2.html , this would allow editors to still treat the file like an html document and at the same time allow the template loader to use the correct engine to parse it.
@shawncatz It is important to have the modules ordered. Template views are only loaded once by the loader, duplicate top level path names are ignored. Originally the load order was application,revel,random modules. The new load order is application, sorted modules, revel.

@pedromorgan Re extension based naming, yes I didn't like that idea either that is why I have the shebang approach in the code. Having different methods in place should be fine though, we do the same with way controllers operate (we can be specific with what view we want rendered, or we just allow revel to figure it out)

cool, thanks for the additional context

Is the current go based templates functionality supported to provide 100% backwards compatibility?

Yes, it is fully backwards compatible, (not case sensitive). I am still tweaking the method signatures a bit yet to streamline some things

I made some modifications to the template engine Expanded BaseTemplate, to carry template name, template path, template type, and filebytes Moved template detection into engine, and added a BaseEngine class which detects templates by shebang and file extension

Closing , updated PR #1157

authors: brendensoares notzippy pedromorgan runner-mei shawncatz


text:
CacheBackend: Use a configurable setting to specify cache key

Using a static class variable allows applications using django-health-check as a 3rd-party package to read the key's identifier used to read/write the cache entry.
This is in particular useful, if the application needs to know which keys are written from other packages and are not part of the application logic itself.

@skarzi Any news on this? I've resolved the threads as no more work needs to be done.

repo: revsys/django-health-check


text:
Make this /tmp

https://github.com/revsys/optimized-python-docker/commit/51981bb0cabfe46fd9e70fdbbd2018a1c7144b02#commitcomment-26026763

I just replaced the example path with <PATH> (like the other line).  Varnish doesn't ingest environment variables within its configuration file, so regardless of the placeholder, someone using this would need to set their target directory.  I hesitate to  point it to /tmp due to how quickly the disk cache can grow.

repo: revsys/optimized-python-docker


text:
UnboundLocalError: local variable 'parseqName' referenced before assignment

UnboundLocalError: local variable 'parseqName' referenced before assignment

Hi! This is resolved by updating to the latest version of the Deforum extensions for a1111.

authors: arcotrr rewbs

repo: rewbs/sd-parseq


text:
conda environment

Hi, I am not able to reproduce your environment to correctly run the demo code. Could you please provide your conda/python package versions as well as cudatookit and cudnn version? Thank you.

env.txt
Hi! I attached a package list of my environment, but it contains a lot of redundant packages. Maybe just search for the ones that you think may be different. My gpu driver version is 512.15, cuda is 11.6, cudnn 8.0.
I think as long as you have pytorch and pytorch3d working, you should be able to run the code.


text:
How to pass the version number to the next task

Using the VersionAPPX task I can set the version in the manifest, but I need that number in the next task.
Would be cool to set an environment variable with the $NewVersion

A reasonable enhancement, but as an interim measure I just make sure the buildnumber parameter I am passing in is in the right numeric format so I can you that in pother tasks, but I realise that might not work for you

This will work, I just need the versionnumber to be figure out the complete file name of one of the generated artifacts.

This would be a great enhancement, just have a read-operation, to label your artifacts. I am looking exactly for that right now.

Shipped in version 1.8

@rfennell Do you have any intention to also add a build task that just extracts the version number from an AssemblyInfo.cs?

I don't, the reason is that I see this extension containing set of tasks as providing the means to stamp a version onto a package/assembly i.e. a write operation.
Anything else would be a different extension in my view

@rfennell Thank you for this information.

authors: Mertsch rfennell ridomin

repo: rfennell/vNextBuild


text:
download video from kabeleins.de by video id

is it possible to download the video from kabeleins.de which is not availble anymore if you know its id?
the source page was http://www.kabeleins.de/musik/metallica-live-in-concert/metallica-live-in-concert-ganze-folge
the video id was 4761633
the download link for SD version (640x360) was http://progressive-ak-mdp.glomex.com/clips/13/f3/4761633-zoldxf-tp06.mp4?hdnea=st=1480717013~exp=1480803413~acl=%2Fclips%2F13%2Ff3%2F4761633-zoldxf-tp06.mp4*~hmac=9bbaf8a52ee1da3e3eb8f960564cf3273287c535c2cb7eb520ef750bd4874bce&access_token=kabeleins&video=1296000&bp=AAH6g4t8dZQXOa3S_qzkl4RUVuiDsjdDnUQYupBSjmbfqH4
though the video is not available on the web site, maybe it's somehow possible to get it from the providers' servers? the other videos from kabeleins.de lead to glomex.com and sim-technik.de. i am not familiar with scripting, so if someone know wether it's possible and if yes then how please let me know.
the thing is i downloaded it when it's was available, but in SD (about 1000 kbps). and now i discovered it could be downloaded in HD with bitrate up to 3500 kbps. and it makes me restless.
thanks for everyone's help in advance.

Not possible.

license: Unlicense