Filesystem reused between multiple calls to Context.run

mysql-router-k8s-operator uses ops-scenario and parameterizes tests with multiple events
Due to pytest limitations, this parameterization does not happen at the pytest level, but is a for loop inside the test.
#50 appears to have introduced an issue where the filesystem is reused, causing this error:
_________________________________________________________ test_missing_provides[incomplete_requires0-remote] __________________________________________________________

self = <scenario.runtime.Runtime object at 0x7f1fe0928130>
state = State(config={}, relations=[Relation(endpoint='backend-database', interface=None, relation_id=1, local_app_data={}, lo...t_id=0, deferred=[], stored_state=[], app_status=UnknownStatus(''), unit_status=UnknownStatus(''), workload_version='')
event = Event(path='backend_database_relation_created', args=(), kwargs={}, relation=Relation(endpoint='backend-database', int...{}, remote_units_data={0: {}}), relation_remote_unit_id=None, secret=None, container=None, action=None, _owner_path=[])
context = <scenario.context.Context object at 0x7f1fe0928610>, pre_event = None, post_event = None

    def exec(
        self,
        state: "State",
        event: "Event",
        context: "Context",
        pre_event: Optional[Callable[["CharmType"], None]] = None,
        post_event: Optional[Callable[["CharmType"], None]] = None,
    ) -> "State":
        """Runs an event with this state as initial state on a charm.

        Returns the 'output state', that is, the state as mutated by the charm during the
        event handling.

        This will set the environment up and call ops.main.main().

        Returns the 'output state', that is, the state as mutated by the charm during the
        event handling.

        This will set the environment up and call ops.main.main().
        After that it's up to ops.
        """
        # todo consider forking out a real subprocess and do the mocking by
        #  mocking hook tool executables

        from scenario.consistency_checker import check_consistency  # avoid cycles

        check_consistency(state, event, self._charm_spec, self._juju_version)

        charm_type = self._charm_spec.charm_type
        logger.info(f"Preparing to fire {event.name} on {charm_type.__name__}")

        # we make a copy to avoid mutating the input state
        output_state = state.copy()

        logger.info(" - generating virtual charm root")
        with self._exec_ctx() as (temporary_charm_root, captured):
            logger.info(" - initializing storage")
            self._initialize_storage(state, temporary_charm_root)

            logger.info(" - preparing env")
            env = self._get_event_env(
                state=state,
                event=event,
                charm_root=temporary_charm_root,
            )
            os.environ.update(env)

            logger.info(" - Entering ops.main (mocked).")
            # we don't import from ops.main because we need some extras, such as the
            # pre/post_event hooks
            from scenario.ops_main_mock import main as mocked_main

            try:
                mocked_main(
                    pre_event=pre_event,
                    post_event=post_event,
                    state=output_state,
                    event=event,
                    context=context,
                    charm_spec=self._charm_spec.replace(
                        charm_type=self._wrap(charm_type),
                    ),
                )
            except NoObserverError:
                raise  # propagate along
            except Exception as e:
>               raise UncaughtCharmError(
                    f"Uncaught exception ({type(e)}) in operator/charm code: {e!r}",
                ) from e
E               scenario.runtime.UncaughtCharmError: Uncaught exception (<class 'FileExistsError'>) in operator/charm code: FileExistsError(17, 'File exists')

../../.cache/pypoetry/virtualenvs/charm-WlU-Koub-py3.10/lib/python3.10/site-packages/scenario/runtime.py:400: UncaughtCharmError

This error does not occur if events only contains one event

I thought I'd fixed that issue already. What version of scenario can you reproduce that on? 5.1.1 should wipe the mock container filesystem on setup if it exists.


Data storage

Problem
Currently, projects are stored in a central location, from which everyone can get the files they need to work with. In other words, anyone can hold as many copies of the data, but there's one version that is available for everyone (located in /scratch1/data/laac_data/).
The 'public' version at /scratch1/data/laac_data/ should be stable and ready for science. In other words, it should pass every tests, and only contain data that went through basic consistency checks at least (manual or not). There must be a strong confidence that analyses can be carried upon them.
Project data can be enriched regularly by performing more annotations for instance.
The current process is the following :

People own a local copy of the public version of the data
They annotate their local copy, convert recordings, etc.
When they are confident about their work, they copy it to the public location and overwrite it

This process works fine as long as there's only one person working at the same time on the data.
But the opposite will often happen. People might try to push conflicting changes. Or they might want to bring their work to others' scrutiny before pushing it.
We'd also like to do continuous integration : it is important to make sure that the data pass all consistency checks at every step of the process. Tests can be broken by changes to the data or by breaking updates to the ChildProject package.
This process could well be managed by a git repository as it handles all the situations we might encounter (diverging works, pull requests, etc.). However, git does not do well with the very large files we need to store. Even git-lfs might fail.
Also, there is little interest in versioning these very big files as they are not going to change.
Solutions

Files
Typical size
git lfs only
git lfs + scratch1 (rsync)
git annex

Dataframe tables (children.csv, recordings.csv, etc.)
O(100 kB)
git
git
git

Recordings
O(100 GB)
git lfs
scratch1 + rsync
git annex on scratch1

Converted recordings
O(100 GB)
git lfs
scratch1 + rsync
git annex on scratch1

Raw annotations (rttm's from vtc, textgrid, etc.)
O(100 MB)
git lfs
git lfs
git annex on scratch1

Converted annotations
O(100 MB)
git lfs
git lfs
git annex on scratch1

Extra data
-
git lfs
git lfs
git annex on scratch1

Pros
-
simpleeverything is versioned
rather simpleseparate process for downloading the very big filesmight be easier to do Continuous Integration
everything is versionedwe can choose which files to downloadflexible about where to actually store the big files (cloud, oberon...)

Cons
-
Not suited for terabytes of data and very large filesRequires infrastructure changes on CoML gitlab (only 21 GB of space...)
Recordings not versionedHow well will lfs do with GBs of annotations ?Might also require more storage on CoML's gitlab eventuallyApparently large files are duplicated when fetched (inefficient storage)
more exoticmore difficult (setup & use)not yet installed on oberon

Here's what the git-annex solution would look like :

Excellent news : just found about datalad, which seems to handle that very nicely : https://www.datalad.org/
Datalad "siblings" are the 'equivalent' of git-annex "remotes"
Datalad uses git-annex anyway !

https://neurostars.org/t/datalad-on-github-cluster-storage/17348 Awaiting answers...

We opted for datalad. Currently under testing.
Now the question is the backup strategy.

Strategy
Disk failure resiliency
User error resiliency
Backup recover
Additional cost

Storage
Content
Process
Delay

Titania/incremental
Repository content
Yes
?
Automatic
copy time
0 up to x TB

Titania/frozen
Datalad sibling
Yes
Lower
Automatic
copy time
0 up to x TB

Titania/frozen
Snapshot
Yes
Yes
By hand
datalad save/publish time (up to a few hours)
0 up to x TB

Amazon Glacier
Datalad sibling
Yes
Lower
Automatic
5 minute delay + download time
3$/TB

Amazon Glacier
Snapshot
Yes
Yes
By hand
5 minute delay + download time + datalad save/publish time
3$/TB

Amazon Deep Glacier
Datalad sibling
Yes
Lower
Automatic
12 hour delay + download time
1$/TB

Amazon Deep Glacier
Snapshot
Yes
Yes
By hand
12 hour delay + download time + datalad save/publish time
1$/TB

Currently trying Amazon Glacier.
git annex initremote glacier type=glacier encryption=hybrid keyid=A79DE284 datacenter=eu-west-2 vault=datasets fileprefix=namibia-data/ embedcreds=yes

Without encryption :
git annex initremote archive-clear type=glacier encryption=none datacenter=eu-west-2 vault=datasets fileprefix=tsimane2017-data-clear/ embedcreds=no

Status : git annex glacier works with or w/o encryption, but might have pitfalls. Currently assessing the use of rclone with S3/deep glacier storage class instead.

git annex initremote s3backup chunk=100MiB type=S3 encryption=hybrid keyid=A79DE284 datacenter=eu-west-3 embedcreds=yes signature=v4 --fast


Mute button  and volume bar is not working as expected

The thing is...when i turn down the volume of a song or mute it, and then play the next song, the volume defaults back to 100 and mute becomes unmuted while the icons remain as it is(muted and volume down).

can i have a go on this issue ?

sure


replace function hide-result with metadata

Hi, thanks for your PR. We thought about using metadata like in this PR to control result hiding but ended up favoring the current implementation of using a viewer to control visibility so I'm not going to merge this for now.
This is not to say that the current implementation is final, we've actually been talking about using metadata for setting the viewers more so there's a good chance things will still change in the future.

Using clerk/hide-result more we're coming around that this is the better (less annoying) approach.

There's still an issue here that the result isn't shown when e.g. setting :fold visibility on the ns as in notebooks/visibility.clj.


feat: oauth support

closes #107 #144

Super excited about this one.  Keep up the good work!

Super excited about this one.  Keep up the good work!

How should we install this pull request/commit into VS Code? I want to use this immediately. Thanks!

How should we install this pull request/commit into VS Code? I want to use this immediately. Thanks!

It won't work yet, the API gateway needs to allow oauth redirect to vscode. I'll merge it as soon as it starts doing so.

It won't work yet, the API gateway needs to allow oauth redirect to vscode. I'll merge it as soon as it starts doing so.


refactor: add term syntax for unsafe

This makes it easier to call unsafe functions without the implementedBy boilerplate.  You can now write unsafe (unsafeCast () : Nat) just like in Rust.
I've also refactored the duplicate runCmd/runTac code while I was at it.

bors merge

bors r-


Compilation failure hints

Feature request
GCC 8.0 is out and has the rather useful notion of supplying a hint on failure. An example from: https://gcc.gnu.org/gcc-8/changes.html
$ gcc incomplete.cc
incomplete.cc:1:6: error: 'string' in namespace 'std' does not name a type
 std::string s("hello world");
      ^~~~~~
incomplete.cc:1:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'?
+#include <string>
 std::string s("hello world");
 ^~~

The current error messages Numba reports are improved but it would be perhaps good to also provide hints, for example (tuple unsupported):
from numba import jit

@jit(nopython=True)
def foo():
    return tuple([1.])

foo()

could give:
Traceback (most recent call last):
  File "test66.py", line 7, in <module>
    foo()
  File "<path>/numba/numba/dispatcher.py", line 344, in _compile_for_args
    reraise(type(e), e, None)
  File "<path>/numba/numba/six.py", line 658, in reraise
    raise value.with_traceback(tb)
numba.errors.TypingError: Failed at nopython (nopython frontend)
Untyped global name 'tuple': cannot determine the equivalent Numba type for <class 'tuple'>
** HINT: Numba does not recognise the type given, is it supported? **

File "test66.py", line 5:
def foo():
    return tuple([1.])

Thoughts?

Closing, hints were implemented and then later removed following feedback about verbosity.


Is it possible to get the time a voucher was created at?

Current result only specify the date
trn_voucher -> date

@clmnin unfortunately Tally does not expose actual date/time of posting voucher in the system, via dedicated in-built field. I have seen many people creating User Defined Field (a.k.a. storage in TDL) to achieve this.

Thank you. I'll look into how to create a UDF


Harshal0902/GOSW34

Issue Number
ISSUE #73

Describe the changes you've made
Added a Dark/Light Mode toggle Button
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Additional context (OPTIONAL)

Test plan (OPTIONAL)
A good test plan should give instructions that someone else can easily follow.
How someone can test your code?
Checklist

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[x] The title of my pull request is a short description of the requested changes.

@nanda-mik please review this, and let me know if any changes required.

@Harshal0902  Nice Work!

@nanda-mik thank you


Access locked inventory slots when polymorphed

No critical feature, just something that would be fun in certain niche situations: When polymorphed all inventory slots get locked and can no longer be changed.
Unlocking them to change what is equipped would be a useful addition especially for the Demon paths Demon Forms.
Ideally I imagine a simple switch that unlocks the equipment slots and allows you to equip different items than the polymorphed form provides or simply getting the benefit of some items that get lost in the process, like rings and necklaces. The equipped items shouldn't vanish once the polymorph ends and the inventory shouldn't get cluttered by unequipped polymorph-related equipment (mostly weapons, I assume), although the latter could be worked around by simply discarding them.
I don't know, if the Druid's (or Feral Champion's or Beastkin Berserker's respectively) Wildshape work differently from other polymorph effects, but those would also benefit from the same ability to make use of different equipment during transformation.
I tried using Toy Box's Enchant functionality and that helps to an extend, but swtiching a weapon's type, using a finesse weapon or equipping a ring doesn't work with that.
I was thinking about this specifically concerning the Demon Forms of the Demon mythic path. There are several of these forms that equip different weapons once polymorphed which in some cases aren't very good or don't fit as well to the other bonuses of the form. The Brimorak form is a good example for that: It equips only a +1 Longsword for a form that only increases DEX.
Maybe this can also be used to unlock more equipment slots for animal companions like rings.

I second the ability to use 'own weapons'  instead of those a polymorph form give with demon shape


continuation token is not returned

I'm trying to get all releases using  ReleaseHttpClient's getReleases() function that is listed in https://github.com/Microsoft/vss-web-extension-sdk/blob/master/typings/rmo.d.ts.
After fetching a first batch of 50 releases i need to provide a continuationToken to get the next batch.
Funtion getReleases()  returns only a list of releases leaving out continuationToken (return IPromise<Contracts.Release[]>)
How should get a next batch of releases?
Thanks!

Any updates about this issue ?? @nkirchem
The same issue as been open here

+1

My opinion is that Microsoft give up the REST client.
So i used the REST API like this :
VSS.require(["VSS/Authentication/Services"],
    function (VSS_Auth_Service) {
        VSS.getAccessToken().then(function(token){
            // Format the auth header
            var authHeader = VSS_Auth_Service.authTokenManager.getAuthorizationHeader(token);
            // Add token as an Authorization header to your request
        });
    });

From : Auth and security
Then to get the continuation token you have to get him from the header after your HTTP/HTTPS call.
Example with ajax :
$.ajax({
	url      : "https://my_TFS_URL",
	type     : "GET",
	dataType : "json",
	headers: {
		"Authorization": authHeader
	},
	success  :function(data,responseText, jqXHR){
		if(data.count){
			// Read headers to get continuation token
			var headers = jqXHR.getAllResponseHeaders();
			var continuationToken = null;
			headers = headers.split("\n");
			headers.forEach(function (header) {
				header = header.split(": ");
				var key = header.shift();
				var value = header.join(": ");
				if(key == "x-ms-continuationtoken"){
					continuationToken = value;
				}
			});
			// Next actions
		}
		else{
			// No data
		}
	},
	error :function( jqXHR, textStatus, errorThrown){
		// Call error
	}
});


Is there a way for Spyder to remember connection configs to an external kernel? It often happens that connection is lost and every time we have to do the same thing

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[ ] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[ ] Tried basic troubleshooting (if a bug/error)

[ ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
What steps reproduce the problem?

What is the expected output? What do you see instead?
Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version:
Python version:
Qt version:
PyQt version:
Operating System name/version:

Dependencies

PASTE DEPENDENCIES HERE

This will be available for the last connection you did through our Connect to an existing kernel dialog.

Sorry, I meant that it'll be available in Spyder 4, tp be released in a couple of months.

Great thanx


Add missing newlines

Hi Apple,
Just a bit of gardening adding newlines to the three files that give a warning building in Xcode.
Cheers

@swift-ci please smoke test and merge

WTF?

@swift-ci please smoke test macOS platform

Odd problem. Only one failure this time. Third time’s a charm?

Thanks folks


Incorrect Verilog output for out-of-bounds extraction

Out-of-range extracts don't generate an error.  That's a philosophical issue, but generating bad Verilog isn't.
I'm not sure if these are actually two separate bugs, but the following FIRRTL:
circuit Top :
  module Top :
    input clk : Clock
    input reset : UInt<1>

    reg sterling : UInt<4>, clk
    node malory = bits(sterling, 6, 2)
    node archer = bits(sterling, 8, 5)

generates the following Verilog:
reg [3:0] sterling;
wire [4:0] malory;
wire [3:0] archer;
assign malory = sterling[6:2];
assign archer = sterling;

The first is bad Verilog, and presumably it was supposed to be caught earlier in FIRRTL compilation.
The second omits the extraction because width(sterling) == width(archer).  This is sensible, provided the bounds were also checked earlier in FIRRTL compilation.

So I understand you correctly, both are errors, but if FIRRTL checked it correctly, the assumption that width(sterling) == width(archer) is valid?
By the way, the CheckWidths pass is where this check should be done.

I believe that is correct.


Major Issue - ability to take items from the crate preview using shift clicking!

Hi. One problem I've noticed (not sure if this had been fixed already or if it's already been reported) is the ability to snatch items from a preview on a chest.
When you left click a crate and preview what's inside, you can shift click the items into your inventory for a very brief moment. It disappears quickly, but if you press E to escape the inventory at the right moment (very quickly), whilst the item is in your inv, you'll exit the preview with the item still in your inventory.
This is a fairly big issue as it means players can spam this for items. For now I've turned off the preview in the config so players can't see the items at all. Apologies if this has already been reported or fixed.

I've just realised that even if you manage to click it into your inventory, you can't do anything with the item as it disappears when you click on it or try do anything, like interact with a chest. It still looks kinda tacky though if you can shift click items into your inv for that long. I guess it's not a major issue then.


Feature/thread msg list

Paginate list of messages for thread/{id} end point.
Fix tests.

I agree with tej the tests shouldn't be dependant on any external services.
and the gov.notify url is probably the worst one we could be hitting

Travis is just rebuilding, it should use log notify this time.


Feature request: Detect (and warn) if in conflict with debugger

This came up in https://github.com/microsoft/debugpy/issues/863#issuecomment-1059171271, where debugpy silently fails to hit API-set breakpoints when using coverage (e.g., python -m debugpy … -m pytest --cov …). Is this conflict something that can be detected at runtime as @fabioz suggests in that comment?
I'm aware of #647. This is a different request. I'm not asking whether coverage can be made to work with debuggers, only to detect whether it was overriding prior registrations and signal that to the user so they'd have some insight into why their debuggers weren't working as expected.

Yes, I suppose coverage could warn that a trace function is in place when it starts.


Where can libIOKit.dylib be obtained?

I can't find it anywhere on-device or online

It's in the GitHub repo.


During a salvage expedition inside the dungeon, if you walk over a catwalk tile over lava, you'll get set on fire as if it was just lava.

I am unable to decide if this is a bug or a feature. On one hand, being on a platform above something gives a sense of safety. On the other hand, for as long as I can remember, a metal grill, over a heat source cooks things.

It used to not burn you so I assume it would be a bug

Unless of course, not burning was the bug, and it got fixed.

Then that whole dungeon room needs to be reworked because it's impossible to navigate normally now

StepTrigger is not supposed to be hit for this it just needs fixing.

Round Removal Tile :tm:

For someone who will start to fix it: Here is a bug in
private bool Update(EntityUid uid, StepTriggerComponent component, TransformComponent transform, EntityQuery<PhysicsComponent> query). New implementation of getting anchored entities in same tile through map system does not work properly. Have skill issue to fix it by myself.


Metrics DPM

Purpose of this pull request
This pull request (PR) adds an article for the new "DPM Volume Metrics" feature:
https://help.sumologic.com/docs/metrics/metrics-dpm/
Issue number: MET-17900

Select the type of change:

[ ] Minor Changes - Typos, formatting, slight revisions
[ ] Update Content - Revisions and updating sections
[x] New Content - New features, sections, pages, tutorials
[ ] Site and Tools - Updates, maintenance, and new packages for the site, Gatsby, React, etc

@angadrandhawa1, could you review this PR?

Thanks for the reviews, @stacykor and @kimsauce! (Although, you're supposed to be on vacation, @kimsauce!)

@stacykor, I'm done making your edits. Could you give it another look and approve if it passes muster?

Added a release note with the "Add release note" commit.

@angadrandhawa1, per our Slack conversation today, I removed the release note from this PR and made the article into a closed beta article.


Update name of "AsyncTCP"

Resolves https://github.com/arduino/library-registry/issues/2333

The library seems to not be present on the system:
2023/01/10 16:58:02 Loaded 5482 libraries from DB
error: Library name ESP32AsyncTCP not found


Improve readability / code clean-up

Codecov Report

Merging #413 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #413   +/-   ##
=======================================
  Coverage   65.45%   65.45%
=======================================
  Files          64       64
  Lines        1754     1754
  Branches      269      269
=======================================
  Hits         1148     1148
  Misses        492      492
  Partials      114      114

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 fab1b11...01e3c2f. Read the comment docs.


detailed reporting in toolbar

Right now, we add the reporting at the begin of the plugin chain. This means we don't see the exact request as it was sent to the server, and we dont see whether a request is answered from cache or not, and we will miss redirects.
We could use a second plugin at the end of the chain, and correlate the requests to determine: request going to actual HTTP client (and thus to real server) / request leading to redirect / request served from cache.
See also https://github.com/php-http/HttplugBundle/pull/19/files#r49300763

This is something that would only make sense here, so the plugin itself could be in this repository, isn't it?

I do not think we need a new plugin class. We just need a new HistoryPlugin service and add that last in the chain.
We could maybe do something cool when displaying this.. Like a git diff to show what was changed by the plugin chain.

Diff sounds cool, but unsure about the usefulness in this case...but I am not against it.
Also, see php-http/httplug#105 for diff stuff

I suggest we add two collectors per client. One at the beginning of the plugin queue and one at the end. We want to do it per client because we want to show that client X sent this request and client Y sent that request.

Why would we need two collectors.
We want to add something to the beginning and to the end of a queue where the order matters. It sounds familiat, doesn't it? (Plugin chain)
Maybe we can somehow pass the client to the journal as well to identify the sender?

Or it could be a PluginClientDebug whichs extends the PluginClient one to replace the plugin chain and log the total stack trace of a request (go in this plugin, then in this one, then in this client, ...)

I can't see how we could pass an identifier to the journal/history plugin to be used every second time. That's why I suggested two collectors.
I like @joelwurtz idea with a PluginClientDebug. That would make a lot of things easier to extract. Like which plugins are used with which clients. It could also be easier to inject the data collector and also a stopwatch(?).

I also like the idea. But keep in mind that this debug client must not have any more features than debug. I mean, the behavior should be transparent: logging should also be done in prod mode in the "ordinary" plugin client with the configured logger. (BTW: is it possible right now to configure multiple logger plugins with different loggers (channels)?)

I think we can integrate the debug in the existing PluginClient by adding a debug options which takes a Plugin as the input (or a list of plugins) and these plugins are injected between each existent plugin

Will this be solved by #84?


Field defined in exclude_fields_in_copy still gets copied

Issue Summary
When I copy a page in the admin, some fields get copied even if they're added to the exclude_fields_in_copy list.
Steps to Reproduce

Start a new project with wagtail start myproject
Edit models.py as follows:

from django.db import models

from wagtail.models import Page
from wagtail.admin.panels import FieldPanel

class HomePage(Page):
    pass

class TestPage(Page):
    name = models.CharField(max_length=255, default="name")

    content_panels = Page.content_panels + [FieldPanel("name")]

    exclude_fields_in_copy = ["name"]

Create a TestPage in the admin UI and set any value other than the default one for the name field e.g original:

Copy the page (without ticking the Publish copied page and Alias checkboxes):

Go to the edit view for the copied page: the name value is copied from the original page

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?

Since I've added the name field in the exclude_fields_in_copy list, I'd expect the copied page to have the default value for that field.

I wasn't able to reproduce the issue with the latest Wagtail version (4.1.1)

I don't have any issue when I tick the Publish copied page checkbox

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: yes

Technical details

Python version: 3.11.1
Django version: 4.0.9
Wagtail version: 3.0.3
Browser version: Chrome 109

@Tijani-Dia considering we no longer support 3.x and you cannot reproduce in 4.1.x I suggest we close with "won't fix"

It's weird that this showed up in 3.0.3 though, considering it was supposed to be fixed in #8048 (which was merged before 3.0rc1).

It's weird indeed. I've been able to add a failing test:
def test_page_with_exclude_fields_in_copy_bug(self):
        original_page = self.test_page.add_child(
            instance=PageWithExcludedCopyField(
                title="Page with exclude_fields_in_copy",
                slug="page-with-exclude-fields-in-copy",
                content="Copy me",
                special_field="Don't copy me",
            )
        )
        original_page.save_revision().publish()
        post_data = {
            "new_title": f"{original_page.title} 2",
            "new_slug": f"{original_page.slug}-2",
            "new_parent_page": str(self.test_page.id),
            "copy_subpages": False,
            "publish_copies": False,
            "alias": False,
        }
        self.client.post(
            reverse("wagtailadmin_pages:copy", args=(original_page.id,)), post_data
        )
        # Get copy
        page_copy = PageWithExcludedCopyField.objects.get(slug=post_data["new_slug"])
        self.assertEqual(page_copy.content, original_page.content)
        self.assertNotEqual(page_copy.special_field, original_page.special_field)
        self.assertEqual(
            page_copy.special_field, page_copy._meta.get_field("special_field").default
        )
        # This fails
        self.assertEqual(page_copy.get_latest_revision().content["special_field"], page_copy.special_field)

It seems that the data in the page instance is correct initially but the latest revision attached to it reflects the changes in the original page. Therefore, when publishing the revision, the initial value gets overridden.

@zerolab, I wasn't able to reproduce it with Wagtail 4.0 either so I think it'd be legitimate to close as wontfix.

It reproduces in Wagtail 5.2.2 #11428

I've found an interesting detail. While the test @Tijani-Dia attached above passes, a name value rendered in admin edit page is not the same as a name in the database. Also, the name inside the latest revision of the copy is the same as in original page:
>>> from home.models import TestPage
>>> copy = TestPage.objects.get(slug='copy')
>>> copy.name
'name'
>>> copy.latest_revision.content['name']
'original'
>>>


Improve Documentation: Using self.param and self.variable

Some things to put in this HOWTO (from chat message by @levskaya ):
self.param is a special case of self.variable that assumes 3 things:

the variable is immutable, so it returns the parameter directly, rather than a mutable reference to it
the param init() fn accepts a PRNGKey as the first arg (in addition to any additionally provided ones)

the variable collection name is params

In code:
p = self.param('param_name', init_fn, shape, dtype)
# is a convenient shorthand for this:
p = self.variable('params', 'param_name', lambda s, d: init_fn(self.make_rng('params'), s, d), shape, dtype).value

So self.param is simply a a convenience, because 95% or more of the time user want to define NN parameters, but the self.variable call lets you do whatever you want.
So self.variable has a much more general pattern than self.param - we don't presume that a general variable init fn takes an rng. To do that:
from flax.linen.initializers import lecun_normal, variance_scaling, zeros, normal
class Foo(nn.Module):
  features: int
  @nn.compact
  def __call__(self):
    key = self.make_rng('spectral_norm_stats')
    u0_variable = self.variable('spectral_norm_stats', 'u0', normal(), key, (1, self.features))
    return u0_variable.value

foovars = Foo(3).init({'params': random.PRNGKey(0), 'spectral_norm_stats': random.PRNGKey(1)})
Foo(3).apply(foovars, rngs={'spectral_norm_stats': random.PRNGKey(1)})
# --> DeviceArray([[0.00711277, 0.0107195 , 0.019903  ]], dtype=float32)

We create a new PRNG sequence inline with self.make_rng (the 'params' rng stream always exist, but we create a new one for use with  spectral_norm_stats - note the PRNG stream doesn't -have- to share the same name as the variable collection, it's just a convention.).  For every PRNGKey stream used, we have to pass in an initializing seed key for each stream as shown here.
If you only need it once in the initializer, you can do this:
class Foo(nn.Module):
  features: int
  @nn.compact
  def __call__(self):
    u0_variable = self.variable('spectral_norm_stats', 'u0',
                                lambda s: normal()(self.make_rng('params'), s), (1, self.features))
    return u0_variable.value

foovars = Foo(3).init({'params': random.PRNGKey(0)})
Foo(3).apply(foovars)

Looking at this again, I think we can resolve this by improving the documentation on Module.param and Module.variable. We can explain better that param is a special case of variable and what the assumptions are.

Looking at this again, I think we can resolve this by improving the documentation on Module.param and Module.variable. We can explain better that param is a special case of variable and what the assumptions are.


MD5 is missing from uploaded files

Storage Explorer Version: 1.7.0
Platform/OS: macOS Mojave
Architecture: x64
Regression From: yes, 1.6.*
Bug description
MD5 is missing from uploaded files
Steps to Reproduce

upload a file
check the file's properties for md5

Expected Experience
md5 should be present
Actual Experience
md5 is missing

Hi @doronAtuar , quick clarification question. Are you uploading to a File share, an ADLS Gen2 Blob container, or a normal Blob container? For a normal Blob container, I cannot repro your issue. For a File Share and an ADLS Gen2 Blob container I can.
For File share, I don't think this is a regression, but I'm pretty sure we can add it.
For ADLS Gen2 Blob container, it doesn't look that property currently exists for those blobs, so I don't think it is something we can support at the moment...

Hi @doronAtuar , quick clarification question. Are you uploading to a File share, an ADLS Gen2 Blob container, or a normal Blob container? For a normal Blob container, I cannot repro your issue. For a File Share and an ADLS Gen2 Blob container I can.
For File share, I don't think this is a regression, but I'm pretty sure we can add it.
For ADLS Gen2 Blob container, it doesn't look that property currently exists for those blobs, so I don't think it is something we can support at the moment...

Hi @MRayermannMSFT
I'm using a regular Blob container
Let me know how I can provide with more helpful data.
It reproduces everytime, let me know how I can provide more helpful data.
Maybe debug prints?

I managed to narrow it down:
It reproduces only for large files
In my case > 500mb

Thanks for narrowing it down! Will look into seeing if I see that as well.

Hey @doronAtuar , I'm only repro'ing it with standard blob containers if I have AzCopy turned on. Do you also have it enabled?

AzCopy 10.0.9 has been inserted and the calculate MD5 flag is definitely being set now.

Hi @MRayermannMSFT , when can we expect a new SE release containing mentioned version of AzCopy >= 10.0.9?
Some of our clients (dependent on using SE with AzCopy) have reported the same issue under the same conditions, however for all file sizes (20Mb - 4Gb).

Hey @plivius , 1.8.0 was released last week. Included in it is AzCopy 10.1.0!

Taken from: https://docs.microsoft.com/en-us/azure/vs-azure-tools-storage-explorer-relnotes#version-180


[NNBD] No error if void is returned from the function which return type is Null

Accordint to the NNBD specification

At this location about synchronous non-generator functions, the text is changed as follows:
It is a compile-time error if $s$ is \code{\RETURN{} $e$;},
$T$ is neither \VOID{} nor \DYNAMIC,
and $S$ is \VOID.
Comparing to Dart before null-safety, this means that it is no longer allowed to return a void expression in a regular function if the return type is Null.

But in fact there is no error nor in analyzer nor in CFE
Null foo() {
  return; // No error
}

void g() {}
Null bar() => g(); // Error. Ok

main() {
  foo();
  bar();
}

Dart SDK version: 2.12.0-223.0.dev (dev) (Wed Jan 13 03:24:39 2021 -0800) on "windows_x64"

foo is not an error: https://github.com/dart-lang/language/blob/6df1612f667f7fdd28dd3b66a89e06b75ea98d2a/specification/dartLangSpec.tex#L15632 allows return; with return type Null.
bar is an error, as stated in the given rule, but I do get the error message. For example, here's the response from the common front end in dartpad.dev (the analyzer reports the error as well):
Error compiling to JavaScript:
main.dart:6:15:
Error: A value of type 'void' can't be returned from a function with return type 'Null'.
Null bar() => g(); // Error. Ok
              ^
Error: Compilation failed.

bar is not an error if the library is legacy (// @dart = 2.9), could that be the reason?

foo is not an error: https://github.com/dart-lang/language/blob/6df1612f667f7fdd28dd3b66a89e06b75ea98d2a/specification/dartLangSpec.tex#L15632 allows return; with return type Null.
bar is an error, as stated in the given rule, but I do get the error message. For example, here's the response from the common front end in dartpad.dev (the analyzer reports the error as well):
Error compiling to JavaScript:
main.dart:6:15:
Error: A value of type 'void' can't be returned from a function with return type 'Null'.
Null bar() => g(); // Error. Ok
              ^
Error: Compilation failed.

bar is not an error if the library is legacy (// @dart = 2.9), could that be the reason?

foo is not an error: https://github.com/dart-lang/language/blob/6df1612f667f7fdd28dd3b66a89e06b75ea98d2a/specification/dartLangSpec.tex#L15632 allows return; with return type Null.

@eernstg  But NNBD spec reads

Comparing to Dart before null-safety, this means that it is no longer allowed to return a void expression in a regular function if the return type is Null.

According to this statement foo must be an error. Is this an issue with NNBD spec?

foo is not an error: https://github.com/dart-lang/language/blob/6df1612f667f7fdd28dd3b66a89e06b75ea98d2a/specification/dartLangSpec.tex#L15632 allows return; with return type Null.

@eernstg  But NNBD spec reads

Comparing to Dart before null-safety, this means that it is no longer allowed to return a void expression in a regular function if the return type is Null.

According to this statement foo must be an error. Is this an issue with NNBD spec?

No, foo is still not an error: This particular sentence ..

Comparing to Dart before null-safety, this means that it is no longer allowed to return
a void expression in a regular function if the return type is Null.

.. is commentary so it's a bit more loose in the terminology than the actual rule, but "to return a void expression" means to have return e; where the static type of e is void, and that doesn't match the situation in foo.
The part that doesn't match the actual rule is \RETURN{} $e$; and $S$ is \VOID: We don't have \RETURN{} $e$;, we have \RETURN;; also, $S$ is undefined because there is no $e$, so it can't be \VOID.

No, foo is still not an error: This particular sentence ..

Comparing to Dart before null-safety, this means that it is no longer allowed to return
a void expression in a regular function if the return type is Null.

.. is commentary so it's a bit more loose in the terminology than the actual rule, but "to return a void expression" means to have return e; where the static type of e is void, and that doesn't match the situation in foo.
The part that doesn't match the actual rule is \RETURN{} $e$; and $S$ is \VOID: We don't have \RETURN{} $e$;, we have \RETURN;; also, $S$ is undefined because there is no $e$, so it can't be \VOID.

@eernstg what about the following code?
void g() {}

dynamic foo() {
  return g();
}

bar() => g();

main() {
  print(foo().runtimeType); // prints Null
  print(bar().runtimeType); // prints Null
}

Is it ok to have Null ryntime type here in a sound null safety mode?

@eernstg what about the following code?
void g() {}

dynamic foo() {
  return g();
}

bar() => g();

main() {
  print(foo().runtimeType); // prints Null
  print(bar().runtimeType); // prints Null
}

Is it ok to have Null ryntime type here in a sound null safety mode?

g returns the null object, which is fine (the type void contains every object, including null).
foo is OK, we can "return void to dynamic". So is bar, whose return type is implicitly dynamic.
At run time, foo() as well as bar() evaluates to the null object (because that's what we get when execution reaches the end of a function body and completes normally), which is sound (because Null <: dynamic), and hence it is allowed with sound null checking. Unsound null checking generally allows everything that sound null checking allows (plus a number of extra things), so they both succeed.
The main point here is that an expression of type dynamic is allowed to evaluate to null, no matter which null checking mode we have.

g returns the null object, which is fine (the type void contains every object, including null).
foo is OK, we can "return void to dynamic". So is bar, whose return type is implicitly dynamic.
At run time, foo() as well as bar() evaluates to the null object (because that's what we get when execution reaches the end of a function body and completes normally), which is sound (because Null <: dynamic), and hence it is allowed with sound null checking. Unsound null checking generally allows everything that sound null checking allows (plus a number of extra things), so they both succeed.
The main point here is that an expression of type dynamic is allowed to evaluate to null, no matter which null checking mode we have.

From the above discussion, I'm going to close this issue as working as intended.

From the above discussion, I'm going to close this issue as working as intended.


Is there a way to resize the image. Can't fin

Summary
I'm trying to find the code/parameter that takes low quality of the image or tell the method to resize
API Changes

It is not in this plugin.


add custom axis labels for the performance diagram

The fix was deployed to AWS and mohawk as a patch


Used the shorter expression to compute Vx #925

This PR solves the issue discussed in #925, i.e., it uses the shorter expression for computing Vx.
This reduces unnecessary computations but it also shows a bit better numerical results as it does avoid to propagate (more than unavoidable) numerical noise.
@andreadelprete -- I still keep the Quu regularisation as the results across many examples are better with it.
Despite that this is not a definitive answer, I would prefer to do not change something that it is working well.

I'll merge this PR, but if somebody has a concern, I am happy to work on them immediately.


val/miou_best metric goes wrong when training with multiple GPU

Hi Damien,
Thanks for your great work!

Unfortunately, there seems to be a bug after you have changed some code in batch data processing. The val/miou and val/imou_best are not consistent when training with multiple GPUs and the latter is wrong. Could you have a look and fix this issue?
Hope you have a good day!
Best regards,
Shanci

Hi, thanks for the info.
We have not tested our code on multi-GPU. Although lightning allows doing so easily, I have not paid particular attention to the distribution normalization layers or metrics computation on multiple devices. So there is no garantee that this works off-the-shelf.
You seem to suggest that you have been doing multi-GPU with the project before and that it worked. Can you confirm ?
Besides, your message also seems to suggest that things worked fine on multi-gpu and now they don't after a change ? Can you please indicate the breaking commit ?
Finally, after answering the above questions, if you want us to have a look, please share a minimum reproducible example.

Hi Damien,
Thanks for your considerate reply! I had indeed worked on 2 commits d940e8bc4be8a79afb0ab0d5255693ef2c5f1df8 and cc6b7684fb09f4851d881ba8cf7c7e4330f7ddf0. I double-checked all the training logs and found the issue had occurred in both of the commits. But for the multi GPU training, sometimes the val/miou_best works fine while sometimes it is wrong. That is why I have thought it worked in one commit before... I have not figured out what is the problem and how to reproduce the issue stably. I will try to investigate the reason and update once I find the reason.
Thanks again!

I am not sure I understand: are you saying you observed some discrepancy between val/miou and val/miou in the single GPU case also or only when using multi-GPU ? Beyond the metrics computation, have you not experienced any other issue with multi-GPU training ?
In any case, looking forward to your minimum reproducible example.

To clarify, all the metrics with single GPU training/validation/testing are correct while 3 metrics (val/macc_best, val/miou_best, val/oa_best) with multi-GPU training are wrong. The val/macc, val/miou and val/oa are correct based on per class metric in the validation stage, while the va/best_xxx metrics have increased value than they should.

I see, thanks for the clarification !
I hope you can find a way to make the error reproducible so we can check.
In the meantime, after a quick look at the lightning documentation for distributed metrics computation, I kinda feel that the problem might be tackled by setting wherever necessary:
self.log(..., sync_dist=are_we_doing_multi_gpu)

Could you please give this a try and see if the issue persists ?

Hi Damien,
After process-level debugging, I found it is exactly the synchronization of distributed training causes the error. In the current code, the val/test set is distributed to processes, and the metrics are calculated on each process independently, while the best metric (best_miou/best_oa etc.) is the highest one among the partitions. Therefore, the metrics in the validation stage are not correct as they are calculated from only part of the validation set.
For reproduction, I think you can simply modify the number of devices > 1 in /configs/trainer/gpu.yaml:
defaults:
  - default.yaml

accelerator: gpu
devices: 4

# mixed precision for extra speed-up
# precision: 16
# precision: bf16
precision: 32

and run the training on the kiiti360 dataset. To observe the above mentioned situation, you can set a break point here and check the self.val_cm.confmat.sum(), miou in the debug consloe.
As you mentioned, the torch lighting provides the sync_dist function to sync between processes. However, by default, the reduce_fx is to average the metric from all processes, while in superpoint clusters, each sample distributed to processes does not contribute to the final metric identically. The processed nag is with different number of nodes, which correspond to different number of points in the cloud. Therefore, the confusion matrix from different processes should be aggregated first. Then we can get the right metric based on the updated confmat.
For the implementation, the lighting mentioned in tutorial that

Note if you use any built in metrics or custom metrics that use TorchMetrics, these do not need to be updated and are automatically handled for you.

I am not sure if this means the lighting and TorchMetric could do element-wise addition on ConfusionMatrix() across the processes as we want. SPT did not record the confmat except for the last test epoch and applying the reduce_fx on scalar metric like acc/miou result from non-uniform partition of the validation set does not make sense as well. So I used the second solution in the tutorial. With self.all_gather to collect self.val_cm.confmat across processes and only log the metric on the rank_zero device, the metric looks correct now.
I do not know if you want to spend time on the TorchMetric.ConfusionMatrix synchronization and whether using self.all_gather is enough. I can make a PR if you think my solution is acceptable. :)

Hi @Shanci-Li, thank you for the in-depth investigation and feedback ! Yes, please create a PR so that I better understand how you implemented the confusion matrix aggregation across multiple processes 😉
If we go that way, the aggregation of panoptic segmentation metrics will also require careful aggregation.

Hi @Shanci-Li, have you made any progress on a potential PR to address this issue you found ?

Thanks for taking the time to do so ! I gave you my feedback in the PR


Add function to validate offers and create a message when values are …

Add function to validate offers and create a message when values are lower than the current

Codecov Report

Merging #732 (a375af3) into master (576abac) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #732      +/-   ##
==========================================
- Coverage   41.41%   41.40%   -0.02%
==========================================
  Files         341      341
  Lines       25337    25353      +16
==========================================
+ Hits        10494    10497       +3
- Misses      14843    14856      +13

Flag
Coverage Δ

unittests
41.40% <100.00%> (-0.02%)
:arrow_down:

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

Impacted Files
Coverage Δ

dbaas/logical/urls.py
100.00% <ø> (ø)

dbaas/logical/views.py
13.93% <100.00%> (+0.06%)
:arrow_up:

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 576abac...a375af3. Read the comment docs.


Remove trigger option of snapshot and snapshot_object

They have the same functionality as the trigger argument of Trainer.extend and are redundant. I think they confuse users and they might misunderstand the trigger feature, and so they should be removed in the next major update.

Do you think we need to remove trigger argument in Trainer.extend or Extension.trigger attribute?

What I meant is to remove the trigger argument of snapshot and snapshot_object, not the trigger attribute. Sorry for the confusing title.
Note: the trigger argument of Trainer.extend and Extension.trigger have different purposes. The former is to customize the trigger, and the latter is the default value for the case when users don't pass a trigger to Trainer.extend. Therefore, neither of them should be removed.

fixed via #2204


[Section/Book] Add section AL and book Programming in AL for Beginners by Krzysztof Bialowas

What does this PR do?
Add resource
For resources
Description

added a new section for the AL programming language
added a new resource to the AL section: Programming in AL for Beginners

Why is this valuable (or not)?
It's a great way for beginners to learn about the AL programming language
How do we know it's really free?

visit the resource link: "The material here is fully free of charge. If you like you can use it in your organization or prepare the workshops for your colleagues. Please only do not remove copyrights from the materials."
additionally you can ask the author.

For book lists, is it a book? For course lists, is it a course? etc.
It's a book with two versions:

V1: https://github.com/mynavblog/ALForBeginners/blob/main/Version 1 - 2019/Programming in AL for Beginners.pdf
V2: https://github.com/mynavblog/ALForBeginners/blob/main/Current Version - 2022/Programming in AL for Beginners.pdf

Checklist:

[X] Read our contributing guidelines.
[X] Search for duplicates.
[X] Include author(s) and platform where appropriate.
[X] Put lists in alphabetical order, correct spacing.
[X] Add needed indications (PDF, access notes, under construction).
[X] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Author writes "First, it is not a book."


Do not dispatch packet to Device/DeviceController

Problem
All messages should be handled by protocols via exchange manager. But legacy codes routes message to device controller.
Change overview
Do not dispatch packet to Device/DeviceController
Testing
Verified using unit-tests.

@mrjerryjohns @vivien-apple @erjiaqing @yunhanw-google Please take a look, I'm not sure DataModelHandler is totally deprecated.


Use System.Text.Json instead of Newtonsoft in MVC serialization

Commit messages for more details

If we want the tests suite to run, we need to either merge gh-actions back to master or change the base here to gh-actions

Should probably bump version

Might worth adding writes for complex contexts (array for example) to make sure everything ticks.
Here:
https://github.com/Soluto/tweek/blob/master/e2e/integration/spec/tweek-api/context.test.js
Can be based on (user.SiblingNames):
https://github.com/Soluto/tweek/blob/master/services/git-service/BareRepository/tests-source/manifests/%40tweek/schema/user.json#L35


K means Clustering from python

💥 Proposal
(A clear and concise description of what the proposal is.)
K Means clustering algorithm from scratch in python.
Have you read the Contributing Guidelines on Pull Requests?
YES

/assign

Closing this due to inactivity since last 21 days. Thank you for your valuable time.😊


Confusing LevelDB corruption.

Like issue #196, we recently decided to enable paranoid mode to see how good
LevelDB was actually doing wrt corruption and data integrity.

We found this wacky case of corruption and can't explain it. It appears as if
two threads raced on adding a record to the log file: one with a short record,
and one with a long record. The short record wrote, the long record wrote, the
sort record updated pointer, then the long record updated pointer. It ended up
looking like some random bytes were inserted, but the rest of the records lined
up on block boundaries perfectly. When loading it sees the set of zeros (how
coincidental) and jumps to the next block, which, fortunately, was an end
record type, and so complained under paranoid mode. The scary part is that if
the record at the beginning of the next block was a full type, then it would be
silent data loss, even under paranoid mode.

All of the hex dumps are sequential bytes in the file, partitioned into
headers, data, and the strange data in the middle of the log.

	// record header. 0x3a bytes type 01
	00000000  a4 36 e6 8e 3a 00 01                              |.6..:..|

	// 0x003a bytes of data
	00000000  e6 48 00 00 00 00 00 00  02 00 00 00 01 14 0a 02  |.H..............|
	00000010  01 16 08 b9 51 38 ba 2c  50 51 d0 39 f5 34 61 6e  |....Q8.,PQ.9.4an|
	00000020  5c 43 00 01 12 0a 03 08  b9 51 38 ba 2c 50 51 d0  |\C.......Q8.,PQ.|
	00000030  39 f5 34 61 6e 5c 43 02  01 16                    |9.4an\C...|

	// tail of some record? those numbers look like a unix epoch time and there are
	// other records in the log with a similar format.
	00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
	00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
	00000020  00 00 00 31 33 38 34 31  38 36 37 30 37           |...1384186707|

	// record header. 0x35 bytes type 01
	00000000  d4 13 bd a4 35 00 01                              |....5..|

	// 0x35 bytes of data
	00000000  e9 48 00 00 00 00 00 00  01 00 00 00 01 13 00 02  |.H..............|
	00000010  00 42 e4 8a ea c1 53 f3  e1 e4 6e 74 a4 14 40 da<EMAIL_ADDRESS>	00000020  90 13 08 01 18 00 50 fa  aa c4 89 ef ae b8 02 58  |......P........X|
	00000030  d1 e8 36 60 01                                    |..6`.|

	// record header ...
	00000000  af 4d 0f 4b 20 00 01                              |.M.K ..|

I have no idea how this happened or how to fix it.

Original issue reported on code.google.com by jtolds on 29 Jul 2013 at 3:48

We're seeing very similar corruption reported, running Bitcoin on OSX:
https://github.com/bitcoin/bitcoin/issues/2770

Original comment by<EMAIL_ADDRESS>on 12 Aug 2013 at 6:16

I think it would be very helpful for bug reports on corruption to include
version specifics for both OS and filesystem.  This issue is probably related
to getting writes flushed to disk properly and the steps necessary to do that
can be dependent on both the OS and the filesystem.  Leveldb is likely tuned
very well for the linux stack used at Google, but for other stacks we may need
to tweak the use of fsync/fdatasync etc -- I think this is what
port/port_posix.h is intended for.

On Mac OS X for most filesystems, for example, it will probably require using a
fcntl F_FULLFSYNC, instead of a simply fsync(), in order to guarantee writes
get to non-volatile storage before returning.  Other OS/fs pairs may require
other tweaks.  Unfortunately that may significantly degrade performance as
F_FULLFSYNC will force all buffers to write, including those unrelated to
leveldb (i.e., I don't believe it is file-specific).  Patch from my local git
repo is attached.

Original comment by<EMAIL_ADDRESS>on 15 Aug 2013 at 5:45
Attachments:

0001-On-Mac-OS-X-fsync-does-not-guarantee-write-to-disk.-.patch

The issue on OS X may be that fsync apparently doesn't tell the hard disk to
flush to the platters.  There's a separate magic incantation for that.

Original comment by<EMAIL_ADDRESS>on 15 Aug 2013 at 8:06

I would recommend to set the priority of this defect to -->"Priority-High"<--.
People getting unusable/destroyed level-db's because of this issue.

Original comment by<EMAIL_ADDRESS>on 13 Aug 2013 at 6:22

This issue is affecting a ton of the crypto currency clients... bitcoin,
litecoin, novacoin, worldcoin, on and on and on... all Level DB errors and it
is for me when I shut the client down and start back up. It is so annoying
because I have to delete the DB files and re download the whole block chain.
Also, it is not just OSX I saw at least one person say Windows XP and I am on
Ubuntu 13.04 DESKTOP ( WITH WINDOWWS TOO) and on Ubuntu SERVER...

Original comment by sudosurootdev on 12 Aug 2013 at 7:58

Come to think of it, the originally reported corruption in this ticket was on
an OS X system as well.

Original comment by jtolds on 15 Aug 2013 at 6:16

oops, i was just informed that it was actually a linux VM on top of OS X. i'm
sure the VM stack called the appropriate f_fullfsync, but i don't know for
certain, and i don't know the specific vm used at this point. :( sorry guys.

Original comment by jtolds on 15 Aug 2013 at 6:21


Erica

Hi, anyone know where i can buy one ready made erica bord?

Unfortunately not. I had a batch of 10 boards. I have sent out the most as a gift and I have only one remaining (my own). So have not sold and will not sell any board. But I upload the Kicad as base for own improvement or order.

boards

Thank you you for your prompt answer, i have download the Files i really like this project and you have done a nice work , can you please specify witch one is the correct Bom file and CPL?  since they are more bom file and PCL filles.... Thank you.

boards

Thank you you for your prompt answer, i have download the Files i really like this project and you have done a nice work , can you please specify witch one is the correct Bom file and CPL? since they are more bom file and PCL filles.... Thank you.

Hi pop, here is the BOM fille and CPL, you can also generate them in kicad, but here they are with the LSCP part list....
BOM.xlsx
CPL.xlsx


docker.defaultRoute creates both HTTP and HTTPS entrypoints despite no valid HTTPS certificate

Do you want to request a feature or report a bug?

Bug (but could also be considered a feature request)

What did you do?
Traefik automatically creates routes for docker containers when no routing rule is applied. These routes are then applied to both :80 and :443 entrypoints despite the fact that the route has no valid TLS certificate.

What did you expect to see?
For a default rule the :443 entrypoint should only be created automatically if there is a valid TLS certificate.
There are a few different ways to solve this:

Let the user specify a default cert resolver in traefik.yml/traefik.toml that is applied to all default routes.:

providers:
  docker:
    defaultCertResolver: le

Give the user control over which entrypoints are used for the default routes:

providers:
  docker:
    defaultEntryPoints: web,websecure
... or ...
    defaultEntryPoints: web

What did you see instead?
The :443 route is created by default with an invalid certificate.
Output of traefik version: (What version of Traefik are you using?)
docker-compose.yml:
image: traefik:v2.0

Version:      2.0.7
Codename:     montdor
Go version:   go1.13.5
Built:        2019-12-09T17:51:21Z
OS/Arch:      linux/amd64

What is your environment & configuration (arguments, toml, provider, platform, ...)?
n/a

If applicable, please paste the log output in DEBUG level (--log.level=DEBUG switch)
n/a

Hi! I'm Træfiker :robot: the bot in charge of communication regulation.
Thanks for your interest in Traefik!
We dedicate the issue tracker to bug reports and feature requests only. My advanced AI has spotted that your issue might be a configuration problem or relates to something that doesn't look like a bug.
To confirm this, please join our Community Forum and reach out to us on the Traefik section.
In case I'm wrong (well, that would be embarrassing :sweat_smile:), my developers will re-open the issue and fix me!
In the meantime, you can double check Traefik's documentation.


Add action roll notes informing swashbucklers when they gain panache

Is there a way to get this change to automatically pick up on actors that were made prior to the release of this feature? I noticed my swashbuckler wasn't getting this message, and after some extensive digging I found out that the actor had no rollNotes in their synthetic class property.
The tedious fix is to re-added the class to the character sheet the proper rollNotes were added. But I wonder if there's a better/smarter/automated way?


A default project will be create every time after restarting seal container if there is no default project

Version: v0.1.0-rc2
UI: v0.1.0-rc2
Env: Ubuntu 22.04 amd64
Test Steps:

Delete the default project.
Restart seal container.

Test Result:

It will create a default project agin.

Environment

Walrus version: v0.5.1

It is not a bug. Please grey out the delete operation for the default project and local environment in the UI. @hibig


Add my first file

Summary

Changes

Closes:
Task list

[ ] For workflow changes, I have verified the Actions workflows function as expected.
[ ] For content changes, I have reviewed the style guide.

Summary
Changes
Closes:
Task list

[ ]  For workflow changes, I have verified the Actions workflows function as expected.
[ ]  For content changes, I have reviewed the style guide.

Summary
Changes
Closes:
Task list

[x]   For workflow changes, I have verified the Actions workflows function as expected.
[x]   For content changes, I have reviewed the style guide.


Splitting by entries

Do you want to request a feature or report a bug?
Feature/bug

What is the current behavior?
I have a need to assemble two different bundles with styles for the open and closed parts. In each of them I use some files with styles (let's call them A, B, C, D). In the first case, these are all files. In the second case, they are files A and B. It is supposed that I should do this in some way: https://github.com/webpack-contrib/mini-css-extract-plugin#extracting-css-based-on-entry.
The main problem is that the entry point is not passed to the function, as a result, depending on the logic of the webpack operation, it is not possible to recursively obtain ALL input points, because it is only one and I could not figure out how it is ultimately determined. If you try to do this through the field of chunks, then there is generally strange logic: I import styles A and B in one file, but for file A, the array with the chunks is not empty, and for file B - empty. So, too, it will not work out.
If the current behavior is a bug, please provide the steps to reproduce.
I'm used react-router and list with routes, where component attribute is wrapper over the react-loadable component (Loadable) with loader prop:
loader: import(/* webpackChunkName: "pages/closed/element"  */ '../pages/closed/Element').then(
  object => object.default
)

In the Element i've exported two files:
(file A) import 'react-select/dist/react-select.css'
(file B) import 'react-virtualized/styles.css'

splitChunks field:
    splitChunks: {
      cacheGroups: {
        styles_closed: {
          name: 'styles_closed',
          test: (m, c) => {
            if (m.constructor.name === 'CssModule') {
              const names = chunks.map(c => c.name).filter(Boolean)
              console.log(names)
            }
            return m.constructor.name === 'CssModule' && recursiveIssuer(m) === 'client_closed' // client_closed - is entry point
          }
        }
      }
    }

For the file A i have in chunks param one chunk with the component Element. For the file B chunks param is empty.
compilation-stats.json.zip

What is the expected behavior?
I think that if the field had a test with a third parameter with an array of entry points, it would be possible to do without crutches in the form of recursive obtaining of entry points.
And, if not difficult, explain how an array with chunks is defined. Is this normal behavior?
If this is a feature request, what is motivation or use case for changing the behavior?
For advanced splitting.
Please mention other relevant information such as the browser version, Node.js version, webpack version, and Operating System.
os - macOS 10.13.4
NodeJS - v8.9.0
webpack - v4.9.2
webpack-cli - v2.1.4
mini-css-extract-plugin - v0.4.0

Actually, btw

Actually, btw


The type or namespace Evilbot could not be found

Last night, I left a battery of tests running, wanted to get th
rough the full 1000.
Ran fine, no issues (I did pretty good, 46 losses, 86 draws).
But... now the project won't recognize Evilbot.
I asked my friendly neighborhood discord community, they suggested an issue with "chess-challenge.csproj" where it compiles Evilbot, but that was normal.
I restarted the program, I even pasted back in the full original Evilbot code.
I'm sure I could just re-download the project file and paste back in my bot. But, this seemed like it could be a pretty major issue, so I thought I'd report it.
I'm thinking it has something to do with VisualStudio being way too overzealous with it's automatic refactoring... It keeps adding "using ChessChallenge.Chess" and then it gets confused about which definitions to use. That's by far the most common one.

After a bit of experimentation, I was able to recreate the issue:
Upon changing Evilbot to some code shared in the discord, visual studio tried to add "using ChessChallenge.Example" to ChallengeController.cs.
It's telling me that the type or namespace "Example" does not exist in that namespace. So, I figured I'd just delete that line, it probably just added a lib that I don't need, right?
Well, removing that line causes the "Evilbot could not be found" error.

EvilBot has to be in the "ChessChallenge.Example" namespace. You might've accidently deleted that namespace when pasting a MyBot class since MyBot doesn't reside in a namespace.

Oh... Huh, I've pasted in a bunch of people's code without adding that namespace, and it's worked fine.
Ok, I'll look out for that in the future, thank you!

Idk, I guess I'm still confused about this.
I just re-downloaded the code, started entirely over.
I posted in someone else's bot from the discord.
All I had to do was change mybot to evilbot.
Trying to add "namespace ChessChallenge.Example" gives me an error that says namespace example doesn't exist.

Ok, I tried to run it an it errored out, saying that example doesn't exist in the context of the challenge controller.
And now when I add the namespace ChessChallenge.Example to evilbot, that error goes away, but we're back to:
The type or namespace Evilbot could not be found.

Gorrammit... I'm sorry for the waste of time...
I had it as "Evilbot."
Not "EvilBot."
LMFAO


Manual error traits

This PR includes all documents related to error messages and some improvement to errors and warnings.

Fantastic. I looked through it and will merge


Is this Buildpack production ready ?

Hello, Is this Buildpack production ready ? Thanks.

Hi @zenati yes it. Many Lucky apps are using this in production including the Lucky website :)


Card menu buttons does not react to touch events

Checklist:

[x] I updated to the latest version available
[x] I cleared the cache of my browser

Release with the issue: 3.0.0
Last working release (if known):
Browser and Operating System:
HA Companion App, Android
HA Companion App, iOS

Description of problem:
Sometimes you need to touch a button 2-3 to make it work.
I noticed this on submenus and thought at first it was happening because my card-mod modifications, but I was able to reproduce this behaviour with minimal configuration.
Recorded on Android:

Huh. I have never experienced this. The ripple effect still happens on the failed` clicks, so it is being registered by the button -- but somehow the action is not triggering. You've seen this on both Android & iOS -- but never browser?

You've seen this on both Android & iOS -- but never browser?

Yeah. AFAIR, never saw this behaviour in browser.

All good after upgrading HA to 2022.3.


Threading fixes

Description
This PR fixes many minor issues with threading.
Also fixes an issue with RoundRobinRouterState where it would fail beyond int.MaxValue messages.
Purpose
This pull request is a:

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

Checklist

[X] I have added tests that prove my fix is effective or that my feature works
[X] I have added necessary documentation (if appropriate)

Many thanks @DenizPiri ! this is great!


Fix issue #13728. Create separate connectionManager for different filter chains

Issue #13728
Code adding filter
https://github.com/istio/istio/blob/7d61672e25a28b0fa49ef2091f5b49703307572f/pilot/pkg/networking/core/v1alpha3/envoyfilter.go#L81
All entries in httpConnectionManagers refer to the same object. Only the first filter_chain will get the correct number of http_filter and others will get more http_filter than expected.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: crazyxy
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: zackbutcher
If they are not already assigned, you can assign the PR to them by writing /assign @zackbutcher in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/pkg/networking/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @crazyxy. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

/ok-to-test

@crazyxy: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test e2e-simpleTests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@crazyxy: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-pilot-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-pilot-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@crazyxy: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-pilot-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-pilot-k8s-presubmit-tests-master

prow/integ-security-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@crazyxy: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-pilot-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-pilot-k8s-presubmit-tests-master

prow/integ-security-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-security-k8s-presubmit-tests-master

prow/istio-integ-k8s-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test istio-integ-k8s-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@costinm gentle ping

This is a good catch. Thanks!

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: crazyxy, rshriram
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/pkg/networking/OWNERS [rshriram]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@crazyxy: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test istio-integ-k8s-tests-master

prow/integ-security-k8s-presubmit-tests.sh
b75d7852e841a51eeb0fefe9fb33537afa460487
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


VTOL back transition acceptance radius calculation

Calculate acceptance radius based on groundspeed and duration for back transition in VTOL_LAND to prevent overshoot of landing waypoint.
ref https://github.com/PX4/Firmware/issues/5626 https://github.com/PX4/Firmware/issues/5681
/cc @AndreasAntener @tumbili

Rebased, i will try to get a flight window soon

Architecturally I don't like that navigator needs to have intimate knowledge of a specific vehicle. Also, mission item was optimized and squashed just to save space and now we have an extra field that only applies for a tiny portion of a specific vehicle's mission.
If this solves the problem for now I'll stop complaining, but it really makes me wonder if we could do a lot better with #4845.

Works awesome

Rebased and re-sitl tested.
@AndreasAntener can you review?

Could we get away with setting _mission_item.acceptance_radius = gndspeed * vt_b_trans_dur where the mission item is created?

Wouldnt work. The groundspeed  can change significantly at the point between reading the item and reaching the waypoint.

@LorenzMeier should be ready for merge after pass

@LorenzMeier i re-checked the last mission, it was wind that blew it off course, the math works.
Could you merge this?


widdevst: fix default, keep original behaviour

See #3397 / discussion at the end

Confirmed here, merging


clearer CEX output with scalarsets

User dec60aa7db706a1959f9a20efb06ccff3729558c reported that scalarset values are printed incorrectly in counter example traces. This is essentially the same issue as (1) on #193. This has been known for sometime, but for some reason initial users were never as bothered by this as I was. Now that people are actually confused by this, we should fix it.
For reference, CMurphi displays symbolic constants here which makes it easier to tell what is going on.

As a reference model, the following is sufficient to demonstrate the issue:
type
  t: scalarset(10);

var
  x: array[t] of boolean;
  y: t;

startstate begin
  for z: t do x[z] := false; end;
end;

ruleset z: t do
  rule begin
    x[z] := true;
  end;

  rule begin
    x[z] := false;
  end;

  rule begin
    y := z;
  end;
end;

invariant
  forall z: t do isundefined(y) | isundefined(x[z]) | y != z | !x[z] end;

With this, CMurphi produces the following cex trace:
        Invariant "Invariant 0" failed.

Startstate Startstate 0 fired.
x[t_1]:false
x[t_2]:false
x[t_3]:false
x[t_4]:false
x[t_5]:false
x[t_6]:false
x[t_7]:false
x[t_8]:false
x[t_9]:false
x[t_10]:false
y:Undefined
----------

Rule Rule 2, z:t_1 fired.
y:t_1
----------

^[[CRule Rule 0, z:t_1 fired.
The last state of the trace (in full) is:
x[t_1]:true
x[t_2]:false
x[t_3]:false
x[t_4]:false
x[t_5]:false
x[t_6]:false
x[t_7]:false
x[t_8]:false
x[t_9]:false
x[t_10]:false
y:t_1
----------

End of the error trace.

and Rumur produces:
        invariant 1 failed

Startstate 1 fired.
y:Undefined
x[0]:false
x[1]:false
x[2]:false
x[3]:false
x[4]:false
x[5]:false
x[6]:false
x[7]:false
x[8]:false
x[9]:false
----------

Rule 1, z: 0 fired.
x[9]:true
----------

Rule 3, z: 9 fired.
y:0
x[0]:true
x[9]:false
----------

End of the error trace.

This is done as of 7ac0c34d996a5a783c02c42b1b0dd9689d17f574.


Rick H Offboarding

Offboarding checklist
Note: please do not put sensitive information here (issues are public)
Feel free to edit list and ~strike through~ any items that do not apply.
Engineering specific:

[x] Change GitHub access level
[ ] Zenhub
[ ] Azure (CDC as a result of ActiveDirectory)
[x] PagerDuty
[x] Splunk
[x] Docker Desktop license assignment

General:

[x] Revoke Okta accounts (Search for name, agency email, and contractor email)

[x] staging
[x] prod

[x] Slack access to channels
[ ] Metabase

[ ] staging
[x] prod

[ ] Office 365 (CDC as a result of ActiveDirectory)
[x] Keybase
[ ] Mural
[ ] Lucid Chart
[ ] Any additional CDC-specific off-boarding (did they get a PIV?)

@TomNUSDS - I suspended his account in Okta Prod. If you can do Staging that would be helpful. I have removed him from KeyBase. I'll remove his access in GitHub and metabase as well.

Thanks for doing prod. OktaPreview done.

@cwinters-usds Any items you can check off as done?

@TomNUSDS all the ones I can do are done; I either (a) verified no account exists or (b) deactivated/removed the account for:

Slack
Docker
PagerDuty

Was he offboarded at CDC? Typically they're very thorough and quick but his account is still active on Azure.

@TomNUSDS @cwinters-usds Just following up in this (we are cleaning up our ZenHub board). Can you confirm if this can be closed out?

@Adrian-Brewster do you know if Rick was offboarded at CDC? His Active Directory Azure accounts (normal and -su) are still showing up as assigned to all the relevant groups.

Right. Adrian, maybe one way you can check yourself is if you go into Outlook and create a New Email Message, his name still auto completes.
Same for MS Teams if you try to start a chat with him.
I assume when he's deactivated, these should stop working, right @cwinters-usds ?

Seems like there are still:

GH Issues and
GH Branches
still owned by rhood?


please make for 1.16.4

please make for version 1.16.4

i agree. also why the heck do websites other than curseforge havea pciture and text version of 16.x versions but no files? latest it shows is 15.5

"Websites other than curseforge" aren't a good place to get mods (unless they're the authors official site).  They might contain malware and such, and they're highly unlikely to be under the mod author's control.  I agree 1.16.4 would be ncie.

1.16.4 Would be very nice indeed.

1.16.4 Would be very nice indeed.

im a nifty coder and can help i think. any particular eason no 16.4 yet?

+1 For support for 1.16.

"Websites other than curseforge" aren't a good place to get mods (unless they're the authors official site). They might contain malware and such, and they're highly unlikely to be under the mod author's control. I agree 1.16.4 would be ncie.

Nexusmods is fine, but of course your not going to find a lot there sense the vast majority of mods are at curseforge.

im a nifty coder and can help i think. any particular reason no 16.4 yet?

if I were you id make another thread or try to get in contact with the devs directly, but I think that as these updates have gotten significantly larger recently it has become more and more difficult to update mods to the newest versions. I remember a big issue with Tinkers was that they basically had to rebuild the entire mod just to update from 1.12. I could definitely be wrong on this though, just my take on this bc of other mods I've seen that haven't been updated in a while.

Forge was completely rewritten between 1.12 and 1.14, which means most mods
had to do significant rewriting too.  Most updates redo certain parts of
the game but barely change others.  1.15 I think changed rendering, 1.16
reworked biomes and dimensions etc.  For a mod like bonsai trees i don't
think there should be a crazy amount of work to port to 1.16, so the dev is
probably just busy with life or something.  I could be wrong though
On Tue, May 18, 2021 at 9:13 AM PatFussy69 @.***> wrote:

im a nifty coder and can help i think. any particular reason no 16.4 yet?
if I were you id make another thread or try to get in contact with the
devs directly, but I think that as these updates have gotten significantly
larger recently it has become more and more difficult to update mods to the
newest versions. I remember a big issue with Tinkers was that they
basically had to rebuild the entire mod just to update from 1.12. I could
definitely be wrong on this though, just my take on this bc of other mods
I've seen that haven't been updated in a while.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/thraaawn/BonsaiTrees/issues/220#issuecomment-843314066,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQQBJAJ4HRF54HCHUIIC7RDTOKG2LANCNFSM4VGTAGEA
.


Add region name lookups

Nice to turn region code -> region name

No idea what this is, ticket is 2 years old, closing.


Issues connecting to vector

Currently getting error with Vector V1:
Error logging in. The bot is likely unable to communicate with your wire-pod instance. Make sure you followed all of the steps and try again.

Im hosting my wire-pod instance on an OrangePi4 with the debian buster image.

Here is the full start up for wire-pod:
orangepi@escapepod:~/wire-pod$ sudo chipper/start.sh
Initializing variables
SDK info path: /home/orangepi/.anki_vector/
API config successfully read
open ../vosk/models/: no such file or directory
Loaded 54 intents and 54 matches (language: en-US)
Initiating vosk voice processor with language en-US
Opening VOSK model (../vosk/models/en-US/model)
ERROR (VoskAPI:Model():model.cc:122) Folder '../vosk/models/en-US/model' does not contain model files. Make sure you specified the model path properly in Model constructor. If you are not sure about relative path, use absolute path specification.
VOSK initiated successfully
Loading plugins
Starting webserver at port 8080 (http://localhost:8080)
Starting SDK app
Starting server at port 80 for connCheck
Initiating TLS listener, cmux, gRPC handler, and REST handler
Configuration page: http://<IP_ADDRESS>:8080
Starting chipper server at port 443
Starting chipper server at port 8084 for 2.0.1 compatibility
wire-pod started successfully!

That is exactly what happened with me after #132.
I updated, and did a hard reset on Vector and the Home Server. After running sudo chipper/start.sh, it took a while (several minutes), but eventually the jdocs and tokens loaded up right after "wire-pod started successfully!". I hope it finally loaded up for you as well.

I didn't wait around that long. Ill try again today.

Vector tries to connect on escapepod.local, not by IP Address.
Maybe it dont reach the host, try :

In your router, look for Static DNS
Set the host name (escapepod.local) and  IP address (computer running Wire-pod)
Apply and reboot the router.

Ok! Thanks I’ll try that out!
On Apr 26, 2023, at 11:38 AM, Fabio Ubiratan @.***> wrote:

Vector tries to connect on escapepod.local, not by IP Address.
Maybe it dont reach the host, try :

In your router, look for Static DNS
Set the host name (escapepod.local) and IP address (computer running Wire-pod)
Apply and reboot the router.

—
Reply to this email directly, view it on GitHubhttps://github.com/kercre123/wire-pod/issues/134#issuecomment-1523878843, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARCB2CVE7ML2Y7HN54BQCOLXDFTTLANCNFSM6AAAAAAXI5AE5Q.
You are receiving this because you authored the thread.Message ID: @.***>

Check to see if you have avahi-daemon installed and running. That is what helps broadcast on your network what "escapepod" and "escapepod.local" is, so vector can find it. A simple test on the computer you are installing the firmware from is to check if this address is reachable
http://escapepod.local/setup.html

Hah! I solved it! It seems an older setup i was working on had the same name "escapepod"! after changing the name it worked!!! Very happy. thank you all so much!

Also let me know anyway I can help! Im an AI engineer working on OpenAssistant with LAION-AI! Would be more than happy to help get something like that working.


feat: create pages group3 share houses edit page

Overview

I added a Share houses Edit Page.

Changes

Created AccordionCategoryItem.tsx component under src/components/ui/accordion.
Created ShareHouseManagementHead.tsx component under src/components/ui.
Modified layout.tsx component under src/app.
Modified accordion.tsx component under src/components/ui.
Modified  TaskCreationDrawer.tsx and  DeleteConfirmationDrawer.tsx component under src/components/ui/drawers.

Review points

Screenshots or videos

https://github.com/Tascurator/tascurator-frontend/assets/77369174/fd45822c-3e58-459d-89de-189690a1bc50
Notes

Assignee Checklist:

[x] The base branch is correct (no accidental merges)
[x] The branch name follows our branch naming rules
[x] The PR title follows our PR title rules
[x] My code follows our coding style
[x] I have commented on my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings or errors in the console

Reviewer Checklist:

[ ] Code readability and simplicity
[ ] Follows best practices and coding standards
[ ] Understandable and maintainable code

thank you Rina:) Could you move the component file to src/components/ ?

Thank you for your review! I have fixed it!


ERROR: unable to download video data: HTTP Error 403: Forbidden

Checklist

[x] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2020.03.24
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log

$ youtube-dl -v --add-metadata -f 'bestvideo[ext=webm]+bestaudio[ext=webm]' -o '%(title)s.%(ext)s' --write-all-thumbnails --write-info-json "https://www.youtube.com/watch?v=rrVDATvUitA";

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '--add-metadata', '-f', 'bestvideo[ext=webm]+bestaudio[ext=webm]', '-o', '%(title)s.%(ext)s', '--write-all-thumbnails', '--write-info-json', 'https://www.youtube.com/watch?v=rrVDATvUitA']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2020.03.24
[debug] Python version 3.8.2 (CPython) - Linux-5.6.4-zen1-1-zen-x86_64-with-glibc2.2.5
[debug] exe versions: ffmpeg 4.2.2, ffprobe 4.2.2
[debug] Proxy map: {}
[youtube] rrVDATvUitA: Downloading webpage
[youtube] {18} signature length 106, html5 player vflset
[youtube] {135} signature length 106, html5 player vflset
[youtube] {244} signature length 106, html5 player vflset
[youtube] {397} signature length 106, html5 player vflset
[youtube] {134} signature length 106, html5 player vflset
[youtube] {243} signature length 106, html5 player vflset
[youtube] {396} signature length 106, html5 player vflset
[youtube] {133} signature length 106, html5 player vflset
[youtube] {242} signature length 106, html5 player vflset
[youtube] {395} signature length 106, html5 player vflset
[youtube] {160} signature length 106, html5 player vflset
[youtube] {278} signature length 106, html5 player vflset
[youtube] {394} signature length 102, html5 player vflset
[youtube] {140} signature length 106, html5 player vflset
[youtube] {249} signature length 102, html5 player vflset
[youtube] {250} signature length 106, html5 player vflset
[youtube] {251} signature length 106, html5 player vflset
[info] Writing video description metadata as JSON to: Air - Johann Sebastian Bach.info.json
[youtube] rrVDATvUitA: Downloading thumbnail ...
[youtube] rrVDATvUitA: Writing thumbnail to: Air - Johann Sebastian Bach.jpg
[debug] Invoking downloader on 'https://r1---sn-hp57knsl.googlevideo.com/videoplayback?expire=1586994721&ei=wUmXXquMLImthgaDtKWICg&ip=<IP_ADDRESS>&id=o-AOIpyuLThp3QZ_r_d0mwX1ID8itrvzXDYkvE9HWJWdOX&itag=244&aitags=133%2C134%2C135%2C160%2C242%2C243%2C244%2C278%2C394%2C395%2C396%2C397&source=youtube&requiressl=yes&mh=Z1&mm=31%2C29&mn=sn-hp57knsl%2Csn-hp57yn7y&ms=au%2Crdu&mv=m&mvi=0&pl=24&initcwndbps=448750&vprv=1&mime=video%2Fwebm&gir=yes&clen=6062782&dur=338.600&lmt=1575002887235581&mt=1586973029&fvip=1&keepalive=yes&c=WEB&txp=5531432&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ALrAebAwRQIhAIznwegwKvfmLflVcnF7aqxjIo0MLHBq6iOv9ZBNGgSpAiAw6hTrOiP-q-8Uz3efrI5R5Mo42Ymw2H7o8G2kGfVVMQ%3D%3D&sig=zJAJpPlAswRQIgWEqGi7hzLgl1J3yxHKbglnwuL_UZLxzIkjNz0dURywcVIQCQwiE1-nhGt9-Ql=zqVA0dil0DxGxOkfJ4bet2CrgieC&ratebypass=yes'
ERROR: unable to download video data: HTTP Error 403: Forbidden
Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 1920, in process_info
    partial_success = dl(fname, new_info)
  File "/usr/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 1865, in dl
    return fd.download(name, info)
  File "/usr/lib/python3.8/site-packages/youtube_dl/downloader/common.py", line 366, in download
    return self.real_download(filename, info_dict)
  File "/usr/lib/python3.8/site-packages/youtube_dl/downloader/http.py", line 341, in real_download
    establish_connection()
  File "/usr/lib/python3.8/site-packages/youtube_dl/downloader/http.py", line 109, in establish_connection
    ctx.data = self.ydl.urlopen(request)
  File "/usr/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 2238, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python3.8/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.8/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden

Description

Since yesterday, I am receiving the following error when attempting any download from YouTube.
ERROR: unable to download video data: HTTP Error 403: Forbidden
There is no problem downloading from YouTube using other plugins.

For anyone who stumbles on this issue, the fix is as follows… Run:
youtube-dl --rm-cache-dir";
After doing so, youtube-dl is functioning properly again. If not too difficult to add, including instructions to do this with the error message would help anyone in the future to fix it themselves. For example:
ERROR: unable to download video data: HTTP Error 403: Forbidden If you are receiving this error, try running the following command: youtube-dl --rm-cache-dir. If the problem persists, file a bug report.
Thanks for the great plugin btw, glad it is working again!


CAPA IMDSv2 as default

User Story
As AWS user, i want to elevate the security of my clusters by utilizing the IMDS v2 only service, disabling the v1 as per AWS recmmendations: https://aws.amazon.com/blogs/security/defense-in-depth-open-firewalls-reverse-proxies-ssrf-vulnerabilities-ec2-instance-metadata-service/
In terms of implementation, with v1beta2 types there is the possibility to configure IMDS in the AWSMachine[template] as part of AWSMachineSpec https://github.com/giantswarm/cluster-api-provider-aws/blob/release-2.3/api/v1beta2/awsmachine_types.go#L56:
apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: AWSMachineTemplate
...
spec:
  template:
    spec:
      instanceMetadataOptions:
        httpTokens: required

For AWSMachinePools we can use the following field as we're using v1beta2 already:
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSMachinePool
  ...
spec:
  ...
  awsLaunchTemplate:
    ...
    instanceMetadataOptions:
      httpTokens: required

Acceptance Criteria

[ ] By default CAPA clusters are deployed with  instanceMetadataOptions: httpTokens: required setting to utilize the IMDS v2 ONLY
[ ] CAPA should still support adjusting this setting for migrated clusters or customers explicitly stating the pararell need for v1

Implementation details

Implementation info to be filled out by engineer

done


Remove ContainerSource and SinkBinding samples

CRDs are our contract with the consumers of these event sources. They expose what users can do, contain a fairly comprehensive documentation, and provide validation of spec attributes.
Pod specs, on the other hand, require obscure environment variables to function, and we don't commit to keeping these environment variables stable. Environment variables, as well as any additional configuration inputs to receive-adapters, are meant to be populated by controllers and should be considered an implementation detail.
Besides, deploying the adapter Pod is in some cases (S3, SNS) not sufficient to get a fully functional event source, because controllers need to reconcile (set up) additional external AWS resources.
Power users are welcome to reverse engineer the input provided by controllers to receive-adapters if they want to run these as standalones.

There are some references to ContainerSource flavor at cmd subfolders.
Maybe those should also be cleaned up.

@odacremolbap done