mysql postinst fails after running apt-get upgrade

Cookbook version
7.1.1
Chef-client version
12.10.24
Platform Details
Ubuntu 16.04.1 LTS
Scenario:
Attempt to upgrade the mysql-server-5.7 package
Steps to Reproduce:
My recipe is as follows:
  mysql_service 'default' do
    initial_root_password 'changeme'
    action [:create, :start]
  end

  mysql_client 'default' do
    action :create
  end

This all worked as expected.
A few weeks later I ran apt-get upgrade which didn't complete as the mysql-server-5.7.postinst  script fails.
Expected Result:
The mysql-server-5.7 package is successfully upgraded.
Actual Result:
mysql-server-5.7.postinst fails during the upgrade process with the following output:
  + mysql_upgrade --defaults-file=/etc/mysql/debian.cnf
  mysql_upgrade: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) while connecting to the MySQL server
  Upgrade process encountered error and will not continue.
  + result=11
  + '[' 11 -ne 0 -a 11 -ne 2 ']'
  + echo 'mysql_upgrade failed with exit status 11'
  mysql_upgrade failed with exit status 11
  + exit 1
  dpkg: error processing package mysql-server-5.7 (--configure):
   subprocess installed post-installation script returned error exit status 1
  Errors were encountered while processing:
   mysql-server-5.7
  E: Sub-process /usr/bin/dpkg returned an error code (1)

I have the exact same issue. Do we have any idea of a workaround for this?

After a bit of investigation it seems that this is an apparmor issue
-- Subject: Unit mysql-default.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mysql-default.service has begun starting up.
Sep 08 15:56:07 torontossc-dev audit[7531]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/etc/mysql-default/my.cnf" pi
Sep 08 15:56:07 torontossc-dev mysqld[7531]: mysqld: [ERROR] Could not open required defaults file: /etc/mysql-default/my.cnf
Sep 08 15:56:07 torontossc-dev mysqld[7531]: mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

Once you stop apparmor you get further down the installation path but there are still some issues. I would recommend rolling back to version 7.2.0 until these other issues are fixed

I would recommend rolling back to version 7.2.0 until these other issues are fixed

The issue creator noted that the problem applies to Cookbook Version 7.1.1...

@klyonrad in that case these are 2 separate issues, his workaround would be to just disable apparmor 👍

Putting apparmor into complain mode for the service doesn't help - the post installation script gets into a mess.
aa-complain /usr/sbin/mysqld
Setting /usr/sbin/mysqld to complain mode.
# apt-get install -f
Setting up mysql-server-5.7 (5.7.16-0ubuntu<IP_ADDRESS>) ...
insserv: warning: current start runlevel(s) (empty) of script `mysql' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `mysql' overrides LSB defaults (0 1 6).
dpkg: error processing package mysql-server-5.7 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 mysql-server-5.7
E: Sub-process /usr/bin/dpkg returned an error code (1)

What helped for me was running 'systemctl enable mysql' and running 'apt-get install -f' again.

@Tealc002 I can confirm that works for me. I can finally, successfully run apt-get update.

Doesn't work for me - I think the above is likely to work if you've still got enough remnants of a packaged install hanging around for the postinst script to run through, connect to a running instance and think it's managed to upgrade itself successfully.

OK, had to get dirty to make this work. Apparmor definitely wasn't helping matters either.
aa-complain /usr/sbin/mysqld
cd /tmp/
apt-get download mysql-server-5.7
dpkg --unpack mysql-server-5.7_5.7.16-0ubuntu<IP_ADDRESS>_amd64.deb
rm /var/lib/dpkg/info/mysql-server-5.7.postinst
dpkg --configure mysql-server-5.7
service mysql-default restart```

```Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 15
Server version: 5.7.16-0ubuntu<IP_ADDRESS> (Ubuntu)```

Given the cookbook avoids the packaged installation mechanisms as much as possible I don't think there is too much harm in not having the postinst script run on a minor increment.

This looks like related to Launchpad bug #1592669.

Same for me on mysql cookbook version 7.1.2 and Ubuntu 16.04.1 LTS: postinstall script fails, but mysql still seems to be updated to the latest version so besides throwing an error on subsequent apt-get upgrade commands this seems mostly harmless.
Not feeling like messing up to much with it as it could break my production environment, but I would appreciate any update on this!

@danielristic is this still happening with the latest version?


Update stable diffusion example

Update Stable Diffusion 1.5 to Stable Diffusion 3.5 Large Turbo

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-973efe3.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-264e9e7.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-7df8d40.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-db80ac2.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-b143dff.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-c197de2.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-7812681.modal.run

🚀 The docs preview is ready! Check it out here:     https://modal-labs-examples--frontend-preview-0ac2b36.modal.run

nice work!


Initial commit for the introduction of the iCalendar-Duration struct.

Hi @hoodie,
I wanted to update the parser and update the output of the property command. I read into a lot of parsing libraries and all seem to have a pretty lackluster API for creating durations. Thats why I decided to create a wrapper for the ISO8601 duration with the addition of the sign.
I wanted to check with you if this is an approach you would agree with, before I put in to much effort with updating all the documentations.
Missing Tasks:

[x] Add parsing of negative durations (-P1D)
[x] Add tests
[ ] Add documentation for Duration
[ ] Update all the documentations

Hi, thanks for putting in the work. Looks pretty great so far. I'm wondering if you can maybe get away with even fewer changes. Looks like you are replicating a lot of the work here by redefining every field of your new Duration type. Maybe you could just wrap iso8601::Duration? Just thinking since that type already implements Display.

by the way I just realized: we could also add those builder methods to iso8601::Duration if you want, I happen to maintain that too ;)

Hi, thanks for putting in the work. Looks pretty great so far. I'm wondering if you can maybe get away with even fewer changes. Looks like you are replicating a lot of the work here by redefining every field of your new Duration type. Maybe you could just wrap iso8601::Duration? Just thinking since that type already implements Display.

I thought about it too, but wanted to avoid having to match the attribute, because its an enum. My main gripe with the ISO8601 format is that it forbids the use of weeks and other duration designators at the same (e.g. parsing of P1W1D fails), which I think is allowed from the icalendar spec. It does not explicitly show it, but the validator on the site parses it without any errors.
I wanted to add some methods to chain the duration creation and than it would break if I combine weeks and days. (e.g. Duration::weeks(1).and_day(1)

About those weeks and months, here's another early idea: Maybe we should be accepting the Week/Year notation when parsing (in order to be compatible with non-compliant implementations). This is a bit of a stretch, but it is said to more lenient on input and more strict on output. So maybe we should accept just ordniary Durations (including negative ones) and internally convert them to the stricter notation. Just an idea, I can imagine this approach might have some pittfalls here and there.

I dont think thats going to work, because year and month is relative to starting date. So its actually not possible to calculate the duration of days without information about the event date. Google calendar for example is only accepting a maximum weeks value of four.

I don't think that's going to work, because year and month are relative to the starting date. So it's actually not possible to calculate the duration of days without information about the event date. Google Calendar, for example, only accepts a maximum week value of four.

that sounds fair

I am closing this PR, because I created a PATCH for the icalendar_duration  package vlarmd. If it gets accepted than it would be fairly easy to implement that for this package. I already did implement it, but not test it thoroughly. The branch is called feature/implement-icalendar-duration, if you want to have a look. I will create an PR if the changes on icalendar_duration get accepted.


Union types always gets parsed as the interface

Generated unions of interfaces always gets parsed to the interface itself since the interface is added first. This is reproducible with the test/example in inline_fragments and InterfaceA.
class InterfaceA(BaseModel):
    query_i: Union[
        "InterfaceAQueryIInterface",
        "InterfaceAQueryITypeA",
        "InterfaceAQueryITypeB",
    ] = Field(alias="queryI")

class InterfaceAQueryIInterface(BaseModel):
    __typename__: str = Field(alias="__typename")
    id: str

class InterfaceAQueryITypeA(BaseModel):
    __typename__: str = Field(alias="__typename")
    id: str
    field_a: str = Field(alias="fieldA")

class InterfaceAQueryITypeB(BaseModel):
    __typename__: str = Field(alias="__typename")
    id: str
    field_b: str = Field(alias="fieldB")

InterfaceA.update_forward_refs()
InterfaceAQueryIInterface.update_forward_refs()
InterfaceAQueryITypeA.update_forward_refs()
InterfaceAQueryITypeB.update_forward_refs()

def main():
    d = {
        "queryI": {
            "__typename": "InterfaceAQueryITypeB",
            "id": "i1",
            "fieldB": "I'm field b",
        }
    }

    o = InterfaceA.parse_obj(d)
    print_object(o)

def print_object(obj):
    print(type(obj.query_i))
    for k, v in obj.query_i.__dict__.items():
        print(f"k={k} v={v}")

Will output
<class '__main__.InterfaceAQueryIInterface'>
k=id v=i1

The reason seems to be because Pydantic always parses this from top to bottom and uses the first one that match, see documentation here. Since InterfaceAQueryIInterface only contains id and so does or object it will match.
Moving the interface to the bottom like this:
class InterfaceA(BaseModel):
    query_i: Union[
        "InterfaceAQueryITypeA",
        "InterfaceAQueryITypeB",
        "InterfaceAQueryIInterface", # <- Interface now last
    ] = Field(alias="queryI")

Will output
<class '__main__.InterfaceAQueryITypeB'>
k=id v=i1
k=field_b v=I'm field b

The Pydantic documentation also mentions Smart Union which supposedly should be configured like this:
class InterfaceA(BaseModel):
    query_i: Union[
        "InterfaceAQueryIInterface", "InterfaceAQueryITypeA", "InterfaceAQueryITypeB"
    ] = Field(alias="queryI")

    class Config:
        smart_union = True

But doing so does not result in properly interpreted unions in this example so I guess I'm missing something here.
Also this will only work if two interfaces doesn't share the same fields, f.ex. in the following case:
interface InterfaceAQueryIInterface {
    id: String!
}

type InterfaceAQueryITypeA implements InterfaceAQueryIInterface {
    id: String!
    field: String!
}

type InterfaceAQueryITypeB implements InterfaceAQueryIInterface {
    id: String!
    field: String!
}

We would always get back the interface listed first in the union. I'm not sure what the optimal way for this would be, one easy way would be to just add a dummy field for the types but there's also possible to parse data into a specific type which could be done if we read the type from __typename. However that could be quite messy since it would have to be done recursively rather than just parsing the response into InterfaceA.

Hey, I looked into this issue and it looks like pydantic's discriminated unions might solve this. Basing on the same example we would get:
class InterfaceA(BaseModel):
    query_i: Union[
        "InterfaceAQueryIInterface",
        "InterfaceAQueryITypeA",
        "InterfaceAQueryITypeB",
    ] = Field(alias="queryI", discriminator="typename__")

class InterfaceAQueryIInterface(BaseModel):
    typename__: Literal["Interface", "TypeC"] = Field(alias="__typename") # we need to list all types which don't have model for them
    id: str

class InterfaceAQueryITypeA(BaseModel):
    typename__: Literal["TypeA"] = Field(alias="__typename")
    id: str
    field_a: str = Field(alias="fieldA")

class InterfaceAQueryITypeB(BaseModel):
    typename__: Literal["TypeB"] = Field(alias="__typename")
    id: str
    field_b: str = Field(alias="fieldB")

InterfaceA.update_forward_refs()
InterfaceAQueryIInterface.update_forward_refs()
InterfaceAQueryITypeA.update_forward_refs()
InterfaceAQueryITypeB.update_forward_refs()

This assumes that in the schema there are 3 types that implement Interface - TypeA, TypeB, and TypeC, but in query, we only select specific fields for 2 of them - TypeA and TypeB. Then all 3 classes are correctly mapped:
objects_data = [
    {
        "queryI": {
            "__typename": "TypeA",
            "id": "id1",
            "fieldA": "AAA",
        }
    },
    {
        "queryI": {
            "__typename": "TypeB",
            "id": "id2",
            "fieldB": "BBB",
        }
    },
    {
        "queryI": {
            "__typename": "TypeC",
            "id": "id3",
        }
    },
]

for data in objects_data:
    obj = InterfaceA.parse_obj(data)
    print(type(obj.query_i))
    print(obj.query_i)

<class '__main__.InterfaceAQueryITypeA'>
typename__='TypeA' id='id1' field_a='AAA'
<class '__main__.InterfaceAQueryITypeB'>
typename__='TypeB' id='id2' field_b='BBB'
<class '__main__.InterfaceAQueryIInterface'>
typename__='TypeC' id='id3'

Cool, thanks!
I took a stab at this but not sure if it's the right approach. Given that __typename will always be a custom object type, this could not be a simple type like String! or Int!?
If so, we could change this:
https://github.com/mirumee/ariadne-codegen/blob/0644ed645fbd04b0ea758402126037e75efd3b5a/ariadne_codegen/client_generators/result_types.py#L318-L321
To
return GraphQLField(type_=GraphQLScalarType(name=type_name))

And then in parse_operation_field_type in https://github.com/mirumee/ariadne-codegen/blob/0644ed645fbd04b0ea758402126037e75efd3b5a/ariadne_codegen/client_generators/result_fields.py#L57
We could add:
if field.name.value == TYPENAME_FIELD_NAME:
    return (
        generate_subscript(
            value=generate_name("Literal"),
            slice_=generate_constant(value=type_.name),
        ),
        [],
    )

This will make the generated code in inline_fragments/interface_a.py look like this:
class InterfaceA(BaseModel):
    query_i: Union[
        "InterfaceAQueryIInterface", "InterfaceAQueryITypeA", "InterfaceAQueryITypeB"
    ] = Field(alias="queryI")

class InterfaceAQueryIInterface(BaseModel):
    typename__: Literal["Interface"] = Field(alias="__typename")
    id: str

class InterfaceAQueryITypeA(BaseModel):
    typename__: Literal["TypeA"] = Field(alias="__typename")
    id: str
    field_a: str = Field(alias="fieldA")

class InterfaceAQueryITypeB(BaseModel):
    typename__: Literal["TypeB"] = Field(alias="__typename")
    id: str
    field_b: str = Field(alias="fieldB")

Is this a reasonable patch or is it too naïve?

Not sure why should we change to return GraphQLField(type_=GraphQLScalarType(name=type_name)). What is type_name? This GraphQLField(type_=GraphQLNonNull(type_=GraphQLScalarType(name="String"))) already represents String!.
In my previous example I assumed that schema has additional type, eg.
type TypeC implements Interface {
  id: ID!
  fieldC: Float!
}

I wanted to show that sometimes we don't have separate model for every type, in query we only specified TypeA and TypeB so we generated models only for them + general one for interface. In order to discriminator to work we need to list all possible types, that's why I added TypeC to annotation Literal["Interface", "TypeC"], even though we don't have model for TypeC ("Interface" in this case is redundant but there is no harm in leaving it, depends on implementation).
I only considered generated result so far, I didn't think of implementation yet, but looking at example of generated code you provided I can tell it may be too naive. There is no discriminator argument in query_i: ... = Field(alias="queryI") , so how it solves discussed issues? Also keep in mind that usage of discrimator may vary for nested and regular annotations.
Also I'm not sure if we should change annotation of typename__ if then there is no union, maybe someone just added it to query? If we do we need to list all possible types under Literal.

Not sure why should we change to return GraphQLField(type_=GraphQLScalarType(name=type_name)). What is type_name?

That's the type of the interface we're generating, so TypeA, TypeB etc.

I wanted to show that sometimes we don't have separate model for every type

Ah, makes sense. And yeah, that will for sure be a problem with my approach.

Also I'm not sure if we should change annotation of typename__ if then there is no union, maybe someone just added it to query?

Yeah I was thinking about that as well but also thought that if we know the type it will contain it wouldn't harm. But yeah, mostly just because I wanted a minimal example, should probably not do that.
I'll hold off any work on this for now. I wrote a plugin that sorts the interface type last which solves most of the cases for me, although it still fails for implementations with the exact same names.


Error

First of all thanks for putting this together! I really appreciate it. I am running into this error when I run the script to get the m3u.
Trying to set environment variable for geckodriver
Traceback (most recent call last):
File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.6/dist-packages/piptv_pmg/pmg.py", line 148, in
main(sys.argv[1:])
File "/usr/local/lib/python3.6/dist-packages/piptv_pmg/pmg.py", line 140, in main
mw = M3UWriter(write_dir)
File "/usr/local/lib/python3.6/dist-packages/piptv_pmg/pmg.py", line 55, in init
self.driver = webdriver.Firefox(self.profile, options=self.options)
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/firefox/webdriver.py", line 174, in init
keep_alive=True)
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 157, in init
self.start_session(capabilities, browser_profile)
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities

No problem!
Do you have a Firefox binary installed on your system? Sorry, that should have been included in the docs. I will add it whenever I have to patch/refactor something next.

I don't think I do. I will check that out. Thanks!

Hey man! Thank you so much! That worked, now may I ask how often the token refreshes? Should I need to run the script generate the m3u every day or hourly?

Awesome glad to hear it man! The tokens are good for 6 hours, so I would set it up to run every 4 or 5! Enjoy brotha!


Uncaught Invariant Violation: Minified React error #188; visit http://facebook.github.io/react/do...

[Enter steps to reproduce:]

Restart Atom when an update comes in
See error message

Atom: 1.21.1 x64
Electron: 1.6.15
OS: Mac OS X 10.12.6
Thrown From: Atom Core
Stack Trace
Uncaught Invariant Violation: Minified React error #188; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=188 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
At /opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:12

Invariant Violation: Minified React error #188; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=188 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
    at w (/opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:12:224)
    at ab (/opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:32:61)
    at findCurrentHostFiber (/opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:33:178)
    at Object.findHostInstance (/opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:248:367)
    at /opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:246:90
    at Object.Dh [as findDOMNode] (/opt/facebook/nuclide/0.259.74448868/nuclide/node_modules/react-dom/cjs/react-dom.production.min.js:197:182)
    at FileTree._measureHeights (/opt/facebook/nuclide/0.259.74448868/nuclide/pkg/nuclide-file-tree/components/FileTree.js:77:38)

Commands
     -2:33.9.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-always.theme-one-dark-syntax.theme-one-dark-ui)

Non-Core Packages
file-icons 2.1.9
haskell-grammar 0.4.0
highlight-selected 0.13.1
language-babel 2.66.1
language-graphql 0.9.0
language-haskell 1.14.3
language-ini 1.19.0
language-lua 0.9.11
language-ocaml 1.9.5
language-rust 0.4.11
language-swift 0.5.0
language-thrift 1.0.2
MagicPython 1.0.10
nuclide 0.263.77136278
nuclide-format-js 0.0.36
set-syntax 0.3.2
sort-lines 0.14.0
tool-bar 1.1.0

Thanks for contributing!
It appears that this is being caused by the nuclide package, not Atom itself. It may be that there is still a bug in Atom. If so, we'll need the maintainer of the package that is causing the problem to help track that down. You should file this issue on their repository so they can either fix the problem or tell us where the problem is coming from. The Atom FAQ has information on how to contact the maintainers of any Atom community package or theme.


Drop nodePackages prefix when possible

There is trend in nixpkgs of changing packaging of node packages without the nodePackages prefix which leads to lead to broken servers like in https://github.com/dundalek/lazy-lsp.nvim/issues/50. So far I also changed it for another vscode extracted servers: https://github.com/dundalek/lazy-lsp.nvim/commit/01272d5ca9c08d70c489c270d86b73ca565bc319
It might be worth to go through the packages proactively rather than users encountering breakage and needing to report an issue.
Task: For each package with nodePackages verify that there is a corresponding package without the prefix on https://search.nixos.org/ and drop the prefix if there is.

@deansallinen Would you be interesting in helping out?

Sure, I don't mind taking a look at this

These all have the nodePackages prefix dropped in the 24.05 channel:

dockerfile-language-server-nodejs
tailwindcss-language-server
typescript
vim-language-server

And in the Unstable channel, these also drop the prefix:

bash-language-server
diagnostic-languageserver
intelephense
svelte-language-server
typescript-language-server
vue-language-server

I'm still learning nix, but it seems like nix-shell -p will reference packages in the Unstable channel, so these could all be candidates to drop the prefix.

Makes sense, I also recommend using unstable.


Fix unexpected attachment and detachment behaviors of RWX volumes

Do not detach attached RWX volumes while upgrading Longhorn system
RWX volume is not required if there is no active workload using it

longhorn/longhorn#6120

@mergify backport v1.5.x


Redirect is loosing Authorization

After a page redirect, authorization data is lost.
This is because we have an unconditional 'new Auth' in init() at this line: https://github.com/request/request/blob/master/request.js#L498
The following hack works for 'Basic', but we probably need something more elaborate for the other authorization schemes.
--- request.js.orig	2015-02-05 14:58:12.401690494 +0100
+++ request.js	2015-02-05 14:57:24.809909090 +0100
@@ -495,6 +495,7 @@
   }

   // Auth must happen last in case signing is dependent on other headers
+if(!self._auth ) {
   self._auth = new Auth()

   if (options.oauth) {
@@ -528,7 +529,7 @@
       options.auth.bearer
     )
   }
-
+}
   if (self.gzip && !self.hasHeader('accept-encoding')) {
     self.setHeader('accept-encoding', 'gzip')
   }

(This feature is needed for single sign on, when authorization is done by a third party through redirects)

I think self._auth = new Auth(self) and the rest of the new modules should be called in the Request ctor in this case, I wonder how the tests passed on this one.

@nylen and anyone else can you review https://github.com/request/request/pull/1407 first, as it touches a lot of places in the code base, so that we can add the fix on top of it? I was really trying to keep these PRs as small as possible, but apparently it doesn't go that way always. Also I'm going to figure out a failing test, I haven't looked at all of the tests really.

@AmedeeBulle a failing test case would be really helpful here.  I have been swamped lately (just accepted a job with Automattic!) so I'll need at least a few days to do a proper review.  @mikeal @FredKSchott @seanstrom etc. any help appreciated.

@nylen congrats! you working with @rauchg?

Thanks!  Looks like not directly at first, hopefully at some point though.

Here is a very simple failing testcase:
var request = require('request');
var user = 'test',
  pass = 'test',
  url = 'http://www.e-bulles.be/redir/p1.html';
request({
  uri: url,
  auth: {
    user: user,
    pass: pass,
    sendImmediately: false
  },
  jar: true
}, function (error, response, body) {
  if (!error && response.statusCode === 200) {
    console.log('Request was OK!');
  } else {
    console.log('ERROR:' + response.statusCode + ':' + error);
  }
});

On the server side, I have configured Apache to do the following:

p1 redirects on p2
p2 authenticate
p2 redirects on p3

Great I'll it to the test suite.


2019-05-10 Adding in Jekyll site

2019-05-10 Adding in Jekyll site
Adding:
netlify.toml
site subdirectory containing Jekyll site code

Codecov Report

Merging #712 into master will decrease coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #712      +/-   ##
=========================================
- Coverage   39.22%   39.2%   -0.03%
=========================================
  Files          68      68
  Lines        3816    3816
=========================================
- Hits         1497    1496       -1
- Misses       2221    2222       +1
  Partials       98      98

Impacted Files
Coverage Δ

pkg/image/imageversion.go
82.92% <100%> (+2.43%)
:arrow_up:

cmd/sonobuoy/app/status.go
58.42% <0%> (-2.25%)
:arrow_down:

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 65e2319...df34f65. Read the comment docs.

The documentation markdown pages was taken from the gh-pages branch but updates made in the past few releases have not been pushed to there.
Instead, all the docs are on master:
README.md
docs/*

Then since we are moving the docs down from docs to site/docs we'll need to make sure any links there are still working/updated as needed.


Extend the conceptual interaction and usage of expressive based apps

Taking the first image (expressive components) in http://framework.zend.com/expressive I request if there can be an extension of this image. I am looking at a high level usage extension; basically that addresses the following:

The flow of the request and response, and method of interaction of expressive components.
How the request and response is handled with created middleware, routes, and pipes (http://zend-expressive.readthedocs.org/en/latest/application/ , http://zend-expressive.readthedocs.org/en/latest/router/piping/)

The docs are too crisp and I stumbled at some places. A little more documentation on routes, pipes, middleware would be nice. I saw a post by Ralf Eggert on addition of sample working codes. I recommend thatt. May be samples with Zend components.

@ganeshkbhat Can you take a look at #261 (and/or the rendered version of it for me, and let me know if it helps towards this goal?

@weierophinney - yes. this is it. . thank you.
may be simple complete git project should help - may be i was and am expecting more. one has to hack in route match and middleware association here
http://zend-expressive.readthedocs.org/en/latest/router/uri-generation/
http://zend-expressive.readthedocs.org/en/latest/helpers/body-parse/
demo codes for below core of expressive would help:
$app->pipe($middlewareToExecuteFirst); $app->pipeRouteMiddleware(); $app->pipe($errorMiddleware); in http://zend-expressive.readthedocs.org/en/latest/router/piping/ it was not clear else where.

may be simple complete git project should help

@RalfEggert is working on a full tutorial, which will likely aid in that regard.

@weierophinney  thank you very much for following up. just pre-during-post router and basic functionality with associating core mods to get used to the flavor.


New patch, protected?

http://ftp.blizzard.com/pub/war3x/patches/pc/War3TFT_127b_Russian.exe
I can't unpack files directly from archive to warcraft folder, don't see Game.dll and War3patch.mpq.

1.26a contain war3patch.mpq : http://i.imgur.com/p8NMYTv.png

MPQ Editor is seeing War3patch.mpq as free space but WinMPQ is reading it correctly.

Well, I have checked what you said, so let me repeat what I said like a year ago ;D
New editor is indeed superior as it ignores most of protections, however there are some downfalls.

Now any file that has even slightest corruption is Read-Only, even the ones that the old versions were able to open and edit.
Some of the files may not be displayed, as they are blocked from view in Read-Only mode (yes this happens).
A lot of MPQs have MPQs inside of them that also have protection, which causes the MPQ Editor to go ape and unable to see the file.

Screenshot attached: On the left - new version. On the right - my old and trustworthy old version ;)

@ladislav-zezula Any plans for this?

Fixed in commit<PHONE_NUMBER>a0b7e6c487d0bd5252eb2f8dab5573


Additional MD3 updates (EXPOSUREAPP-11341)

https://jira-ibs.wbs.net.sap/browse/EXPOSUREAPP-11341

Please, could you add a little description what this PR actually changed?
See also https://github.com/corona-warn-app/cwa-documentation/issues/402.


Feature Request: Allow Option of Endpoint-URL

Currently there is no option to allow browsing with the --endpoint-url option.
The feature allows you to point to a different URL than amazon for instance if you are running S3MOCK https://github.com/adobe/S3Mock .
# run docker s3Mock locally
docker run -p 9090:9090 -t adobe/s3mock

# create a bucket
aws --endpoint-url=http://localhost:9090 s3 mb s3://testing

#push a file
aws --endpoint-url=http://localhost:9090 s3 cp test.txt s3://testing/test.txt

It would be convenient to allow this option in MyS3Browser .

Big 👍  to this feature request. It would allow us to use the browser with Wasabi.

I've tried to get the source code, but it is not buildable.
Did you commit all the source code, @shishirsharma ?
trinh.pham@MyMac MyS3Browser % npm run build -- -prod

><EMAIL_ADDRESS>build /Volumes/Data/Projects/MyS3Browser
> ng build "-prod"

Date: 2020-09-24T10:28:33.158Z
Hash: 4c86756d5a83a076c04c
Time: 6851ms
chunk {0} styles.d41d8cd98f00b204e980.bundle.css (styles) 0 bytes {3} [initial] [rendered]
chunk {1} polyfills.3bc34265385d52184eab.bundle.js (polyfills) 86 bytes {3} [initial] [rendered]
chunk {2} main.e402deade8b026b7d50e.bundle.js (main) 84 bytes [initial] [rendered]
chunk {3} inline.22b7623ed7c5ac6f9a35.bundle.js (inline) 1.45 kB [entry] [rendered]

ERROR in ng:///Volumes/Data/Projects/MyS3Browser/src/app/navbar-dropdown-credential-menu/navbar-dropdown-credential-menu.component.html (3,3): Property 'currentCredential' does not exist on type 'NavbarDropdownCredentialMenuComponent'.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>build: `ng build "-prod"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/trinh.pham/.npm/_logs/2020-09-24T10_28_33_220Z-debug.log


Feature/Extended flip for option weights.

Closes issue #139.
Added the ability to add weights to provided options passed as arguments. The keyword "weights" separates the options and weights in the supplied arguments. The number of options must match the number of weights.

Hey, thanks for the PR! Can you provide a quick screenshot demoing this, and check the CI failures too. Happy to merge otherwise, implementation seems solid.

Hey, thanks for the PR! Can you provide a quick screenshot demoing this, and check the CI failures too. Happy to merge otherwise, implementation seems solid.

See attached. I've made a further change to the file and will look at the CI now.

Looking good. I would recommend moving "weights" index into a separate variable. That would most likely fix some of Black's formatting problem. The issue it comes up with about remove logging.py is not cause by your code, so ignore that error for now.

LGTM

Looks good. I'll give it a final test tonight, then I'll merge. TY


Unknown error

Unknown error. Librelinkup is correct and working and the glucose direct app shows connection to they libre 3 sensor . The sensor is over a week old and the app was working until librelinkup update and now won't update blood sugar level however it's still connected to the sensor.

Same issue here. I’ve tried deleting and reinstalling the app. The error I get is “The data couldn’t be read because it is missing.” even though the website worked perfectly before the update.

The latest update has fixed my issue.


Social sharing options disappear when adding 1password extension item to UIActivityViewController

I'm using the low-level branch of the 1Password extension in my browser application so I can add the 1Password extension item to the existing UIActivityViewController. A very odd problem is that when I add the returned extensionItem to my UIActivityViewController's items, I lose Facebook and Twitter from the sharing options. When I remove the 1Password extension item, the Facebook and Twitter options come back.

Closing this issue. Since it has been addressed in the ACME Browser (WebView Filling Demo for iOS - Low Level project) target from the add-low-level-api branch.


docs(pages/v2): add devServerBroadcastDelay deprecation

@pcattori I'm still seeing some references to devServerBroadcastDelay in dev code - do we need a separate v2 task to remove these codepaths from dev?

Thanks!  I cut and repointed to release-hotfix - do you mind adding a minor changeset so it gets picked up in a prerelease when merged?

oops - repointed this when I meant to repoint https://github.com/remix-run/remix/pull/7064.  Too many tabs open!

Yikes, this github bug just scared the heck out of me haha.  I definitely did not delete main (which is protected), I deleted release-hotfix which triggered the auto-close of this PR which was pointed (accidentally by me) to release-hotfix


Format action output in local action server ui

Target components
action_server
Why & who
For readability of the results
Feature or enhancement
Format the string outputs of the actions in the UI. Newlines should be newlines. This would greatly improve readability.

Solution & alternative
No response

@fabioz We might need that as we're rendering the output with the help of the Code component. I've done a much simpler fix. Please take a look when you have time.


Update mockito-scala-scalatest to 1.16.15

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

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.mockito", artifactId = "mockito-scala-scalatest" } ]

labels: test-library-update, semver-patch

Superseded by #2074.


[SCRIPT] Unsupported Regex breaks the app in Safari

Describe the bug
Trying to bring up the web app in Safari results in SyntaxError: Invalid regular expression: invalid group specifier name error in Console. Works fine in Chrome.
To Reproduce

do npm i prettier-sql in your project
start the project
Open the page in Safari
View Develop /Web Inspector/Console. Observe:
SyntaxError: Invalid regular expression: invalid group specifier name

Expected behavior
App compiles and works fine.
Additional context
The regex that seems to be breaking it is /(?<=[^\s]+) (AS )?(?=[^\s]+,?$)/i in Formatter.ts
Per https://caniuse.com/js-regexp-lookbehind, LookBehind is not supported in Safari

Did not consider availability of lookbehind but will see if I can find a workaround for 5.x versions, this issue will definitely be gone in 6.x

This is now fixed in sql-formatter 6.0.0

@nene Thanks!


Add-GSDriveFilePermissions to share public - 'FileID' is ReadOnly property error

When using the following command:
Add-GSDriveFilePermissions -FileId "<Redacted FileID>" -type Anyone -Role Reader
I get the following error:
Add-GSDriveFilePermissions : 'FileId' is a ReadOnly property.
At line:1 char:1
+ Add-GSDriveFilePermissions -FileId "[redacted FileID]"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Add-GSDrivePermission

I'm on it! thanks, @queks!!

Fixed in v2.6.1! Update when you're able to and let me know if you're still having issues!

It works! Thanks!


Bump to ts-proto 1.165.0 to fix tsc compile error

The current version has an issue that makes it generate typescript that no longer compiles properly:
src/gen/google/protobuf/timestamp.ts:2:23 - error TS2497: This module can only be referenced with ECMAScript imports/exports by turning on the 'esModuleInterop' flag and referencing its default export.

2 import * as Long from "long";

This error originates from this file in ts-proto:  https://github.com/stephenh/ts-proto/blob/v1.138.0/integration/simple/google/protobuf/timestamp.ts
And is fixed in the 1.165.0 version of the same file: https://github.com/stephenh/ts-proto/blob/v1.165.0/integration/simple/google/protobuf/timestamp.ts

ping @ido-namely

Bump @ido-namely

Closes #383


In "void lit by candles" section, no visual confirmation of button press

If user presses "right," "left," "forward," or "backward," and they need to do so multiple times in order to get a result, there's no confirmation that each button click was registered.
A simple fix would be to change the button color on clicks or hovers--or maybe have a visual grid or change text.textContent to track progress.

Realizing it's going to take longer than I thought. Might come back to this at a later time.


ADD little Changes in Project section context.

Problem
I actually found a small thing while reading the project section that read more is not that bold. it should be bold visitors can easily check it out.
Before image

After Image

@himanshu007-creator sir, please assign to me this task.  i am gssoc'21 participant.

I am a Gssoc participant , please assign me this issue.

Old website issue


Indexing setup was not mentioned in the article

Thanks for the awesome content, I found it extremely useful 👍
One point was not clear to me though:
It was not mentioned what indexing strategy was chosen for V1, V2, V3
The defaults are that all fields are indexed in containers.
Was it true here, with the provided RU benchmarks?
If not, can additional indexes impact denormalization decisions?

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

ID: 669528a7-38dc-a6a9-f98f-4cbb91fd44e0
Version Independent ID: 5e5fcb52-86e8-7e08-6209-79f9ce5e2a91
Content: Model and partition data on Azure Cosmos DB with a real-world example
Content Source: articles/cosmos-db/how-to-model-partition-example.md
Service: cosmos-db
Sub-service: cosmosdb-sql
GitHub Login: @ThomasWeiss
Microsoft Alias: thweiss

@kostelnyy Thanks for the feedback! We are currently investigating and will update you shortly.

@kostelnyy Thanks for the feedback! We are currently investigating and will update you shortly.

@kostelnyy Thanks for your feedback! It is true that this article focuses on data modeling and partitioning, and doesn't cover indexing. The measurements were made with the default indexing policy and as you pointed out, overriding this policy by only indexing the required properties would further improve the RU consumption and latency of all commands (Cx).

@kostelnyy Thanks for your feedback! It is true that this article focuses on data modeling and partitioning, and doesn't cover indexing. The measurements were made with the default indexing policy and as you pointed out, overriding this policy by only indexing the required properties would further improve the RU consumption and latency of all commands (Cx).

@ThomasWeiss Thanks for providing the details.
@kostelnyy Please let us know if this helps or else you need more details on it.

@ThomasWeiss Thanks for providing the details.
@kostelnyy Please let us know if this helps or else you need more details on it.

I made a minor commit to the doc to mention the default indexing policy.

I made a minor commit to the doc to mention the default indexing policy.

Thank you @ThomasWeiss  and @SnehaGunda  to help out here.
@kostelnyy We are going ahead and closing this issue and please get back to us if you have any further issue.

Thank you @ThomasWeiss  and @SnehaGunda  to help out here.
@kostelnyy We are going ahead and closing this issue and please get back to us if you have any further issue.

Thank you all for the feedback ❤
@NavtejSaini-MSFT I'm happy to have it closed

Thank you all for the feedback ❤
@NavtejSaini-MSFT I'm happy to have it closed


Change icon path to ~/.local/share/icons

Instead of telling the user to clone in ~/.icons it should be ~/.local/share/icons to follow the xdg standards and not clutter the home directory

@axtloss @TheEvilSkeleton thanks !! I had no idea about the standards !! I will also remove my .icons now :)


Add slides for lecture 4

Hm, I see that the lecture tiutle in the slides and the main MD file is not the same. Can you fix that, please?

Fixed.


Remove the old ask_*_on_launch options

These were relevant for AWX based embedded ansible implementation,
but are no-longer used with ansible runner

@Fryguy is there any reason this can't be merged?


Update to guzzle 6

Thanks for the PR.
As Guzzle 6 is only compatible with PHP5.5+, this introduce a BC.
This does not means I'm agains such PR, just that this PR will need to be done in NeoClient 3.0 then. I'll prepare a stable 3.0 version by upgrading the php version constraint to 5.5 or even 5.6 and ping you when ready

Can you rebase your PR on the master branch, thanks !


Add language selection

Make a feature to be able to select which language to translate from and which language to translate to. (Translated from language could be done automatically)


Joining Kapacitor and UDF data

Hello,
this is a duplicate of https://community.influxdata.com/t/joining-kapacitor-and-udf-data/7669, which has not yet received any responses. I'm hoping I might be able to find a solution of my problem here.
I would like to write a user-defined function with behavior similar to that of Kapacitor's inbuilt count, min, max etc. aggregation functions. In particular, the data coming from this UDF should be joined with Kapacitor data as in the following example:
dbrp "testdb"."autogen"

var data = batch
    |query('''
      SELECT * FROM "testdb"."autogen"."tsm_data" WHERE f_l0 = 'Archive_1' AND f_l1 =~ /^dataNode.*$/
    ''')
        .period(15s)
        .every(15s)
        .groupBy('f_l1')
        .align()

var count = data
    |count('vl_0_int_INT')
        .as('value')

var status = data
    @statusacc()
        .statusFieldName('vl_1_Status_INT')

count
    |join(status)
        .as('count', 'status')
    |eval(
        lambda: unixNano(now()),
        lambda: "count.value",
        lambda: int("status.status_value"),
        lambda: "f_l1"
    )
        .as('f_changed', 'vl_1_Count_INT', 'vl_4_Status_INT', 'f_l1')
        .tags('f_l1')
    |influxDBOut()
        .database('testdb')
        .retentionPolicy('autogen')
        .measurement('tsm_data')
        .tag('f_l0', 'Archive_1_dest_kap')
        .precision('ns')

The source measurement has this structure
name: tsm_data
time                f_changed           f_l0      f_l1      vl_0_int_INT vl_1_Status_INT
----                ---------           ----      ----      ------------ ---------------
1543497484673059335<PHONE_NUMBER>673057278 Archive_1 dataNode1 10           1
1543497489676660290<PHONE_NUMBER>676658110 Archive_1 dataNode1 10           1
1543497494698380454<PHONE_NUMBER>698378299 Archive_1 dataNode1 10           1
...

When writing the UDF I used the code on https://docs.influxdata.com/kapacitor/v1.5/guides/socket_udf/ as a template, except that my code is in Go. My problem is that the join in the script above does not work, i.e. that I see the following output in kapacitor show
query1 [avg_exec_time_ns="0s" batches_queried="2" errors="0" points_queried="6" working_cardinality="0" ];
query1 -> statusacc3 [processed="2"];
query1 -> count2 [processed="2"];

statusacc3 [avg_exec_time_ns="0s" errors="0" working_cardinality="0" ];
statusacc3 -> join5 [processed="2"];

count2 [avg_exec_time_ns="160ns" errors="0" working_cardinality="1" ];
count2 -> join5 [processed="2"];

join5 [avg_exec_time_ns="0s" errors="0" working_cardinality="2" ];
join5 -> eval6 [processed="0"];

eval6 [avg_exec_time_ns="0s" errors="0" working_cardinality="0" ];
eval6 -> influxdb_out7 [processed="0"];

and no data in the InfluxDb destination database. The code sending the point back from the UDF to Kapacitor looks like this:
func (h *StatusHandler) EndBatch(end *agent.EndBatch) error {
    point := &agent.Point{
        Time:      end.Tmax,
        Name:      end.Name,
        Group:     end.Group,
        Tags:      end.Tags,
        FieldsInt: map[string]int64{"status_value": int64(1)},
    }

    h.agent.Responses <- &agent.Response{
        Message: &agent.Response_Point{
            Point: point,
        },
    }

    return nil
}

(the hard-coded status_value is just for demonstration purposes)
I suspect that Kapacitor is not able to merge the points coming directly from Kapacitor and the one coming from the UDF. Is there a way I can debug this? Is there something fundamentally wrong here that I am not seeing?

Hi,
I have the same problem with python implementation - join doesn't work. however join with itself works. Was smoking logs for several hours - no hints there. Did you find solution ?

Hi @borei74, unfortunately I never found a solution to this problem.

eventually i solved, but solution is not elegant, and it can't be applicable for all use cases. basically constructing streams from initial batch results - taking last point out of all batch results.


Carousel is not working when local images are used instead of loremimage samples in docs

Carousel doesnot support image files of any type from file system. works only with the loremimage samples as given in the docs.

@SandeepVattapparambil Could you please give some more details regarding the issue. Carousel should be able to use images from file system.

I used a carousel inside a card. Its able to load images from loremimage as in sample docs, but when I load images from development file system, it does not work . Its says initialized when inspected but its not rendering as expected..

I hope this can be closed now as @SandeepVattapparambil issues isn't a 'issue' with Materialize

PTAL http://codepen.io/ChristfriedBalizou-1472222311/pen/WodLWQ?editors=1010#0

Can confirm, I had the same issue except not in card. The image path seemed to be correct but was only working when using lorem images

@arpit9295 In the codepen example provided above images are not from lorem and it seems to work. Please verify the path to images are valid.
If the problems persists, please provide a codepen example to inspect.

Is not working for me too. Only Works with lorempixels images.

@Braytiner It works fine for me even when using other image sources. Please take a look at this codepen. If it still doesn't work, Please provide with a non-working example to understand the issue.

Fixed in 538f9dee04d7b8589b179cd78e1e20ad6a164787


Cannot set package-name

From this part of the readme it seems like it should be possible to set the package-name per path:
https://github.com/googleapis/release-please/blob/f2472e1782200aae997eaaa360416a961dfb8f92/docs/manifest-releaser.md?plain=1#L300
But I get the following when running the action:
Unexpected input(s) 'package-name', valid inputs are ['token', 'release-type', 'path', 'target-branch', 'config-file', 'manifest-file', 'repo-url', 'github-api-url', 'github-graphql-url', 'fork', 'include-component-in-tag', 'proxy-server', 'skip-github-release', 'skip-github-pull-request']

And I cannot see package-name references anywhere in https://github.com/googleapis/release-please/blob/main/schemas/config.json
For the reference, my config file looks like this:
{
  "release-type": "simple"
  "packages": {
    ".": {
      "package-name": "qualpal"
    },
    "bindings/r": {
      "package-name": "qualpalr"
    }
  }
}

Nevermind. I made the mistake of combining release-type in the github action yaml settings with a config file, and the config file was consequently ignored.


Access to strange Midgard attributes for "act of strength"

I discovered two "attributes" of sorts of Midgard character sheets, @{Yorric MacRathgar|KraftaktW} and @{Yorric MacRathgar|ItemBKraftakt} that I cannot seem to access through MMM, neither as attributes (sender.KraftaktW) nor through the tables (none of the tables available through findattr() seem to fit). They are not skills, nor do they belong to attack, defense, languages, senses or any other table I can see. Do you have a more convenient way than groping in the dark to identify where to find these, or are they not accessible through MMM?

Very curious – I'll have to investigate.
From how you're saying you can access these attributes through vanilla Roll20 attribute calls I can't see any reason why they shouldn't work with getattr(). This also doesn't look like it's a table attribute.
Can you find these attributes in the character sheet's "Attributes" tab? (You cash at the other non-table attributes there, right?)

No. I can find all the others (Gw, Wk [Willenskraft], AP, LP) but not these two. So where does the character sheet store the data?

Workaround: roll("Finn MacRathgar", "@"&"{KraftaktW}") – with the implied benefit of having the dice engine evaluate the expression stored in the KraftaktW attribute, which is actually something like floor((@{St}+@{ItemBStärke})/10) rather than a direct numeric value.
Still not clear why getattr() isn't able to fetch this attribute (and even ItemBKraftakt, which is completely vanilla as far as I can tell).

The workaround works nicely, AFAIC that's good enough for our rare use of this attribute.

From where I sit, we could close this issue.

Just found this in the docs:

Working with Character Sheets
The Character Sheets affects the usage of the Attributes object type, because the sheets have the capability of specifying a default value for each attribute on the sheet. However, if the attribute is set to the default value, there is not yet an actual Attribute object created in the game for that Character. We provide a convenience function which hides this complexity from you. You should use this function to get the value of an attribute going forward, especially if you know that a game is using a Character Sheet.
getAttrByName(character_id, attribute_name, value_type)

So I'm guessing now that this strange floor((@{St}+@{ItemBStärke})/10)-valued attribute never makes it into the database because the formula is its default value, and clearly the getAttrByName() API function does something magical under the hood not available to normal API scripts to be able to access that default value.
MMM's getattr() currently shares code with setattr() that fetches the attribute object in order to then read or change it. To fix this issue, getattr() would have to fall back to the getAttrByName() API function when no attribute object can be found.


Add "On key" mode for glowing (related to #1527)

It supports multiple types of glow (allies, enemies and etc.) without any contradiction.

All Right

#1527


feat: http returns data with object

Codecov Report
Attention: Patch coverage is 83.87097% with 5 lines in your changes are missing coverage. Please review.

Project coverage is 68.71%. Comparing base (f379f4a) to head (fbbb633).

Files
Patch %
Lines

controller/rest/restful.go
83.87%
3 Missing and 2 partials :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #309      +/-   ##
==========================================
+ Coverage   68.62%   68.71%   +0.09%
==========================================
  Files          85       85
  Lines        9707     9730      +23
==========================================
+ Hits         6661     6686      +25
+ Misses       2371     2366       -5
- Partials      675      678       +3

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


Can not get newest query of route when click browser back button

Version
v1.4.2
Reproduction link
https://no.example.com
Steps to reproduce

[x] server side render

open website http://example.com/list?limit=10&page=5
read query in asyncData method
get the current query

{
  "limit": 10,
  "page": 5
}

go to the next page with this.$router.push(xxx), and get the current query

current url: http://example.com/list?limit=10&page=6

{
  "limit": 10,
  "page": 6
}

go to another route with this.$router.push(xxx)

current url: http://example.com/demo

go back the last route with this.$router.back() and get the current query in asyncData method

current url: http://example.com/list?limit=10&page=6

{
  "limit": 10,
  "page": 5
}

done!

What is expected ?
It should get the last query when router back
the page of query should be 6 not 5
I am pretty sure the browser has generated the browsing history.
1. http://example.com/list?limit=10&page=5
2. http://example.com/list?limit=10&page=6
3. http://example.com/demo

What is actually happening?
It just gets the page that was recently rendered by the server.

This bug report is available on Nuxt community (#c7676)

The strange thing is that query is correct in mounted circle lift hook

Could you try reproducing the issue with nuxt-edge?

note: by update query only, page not updated! you must use :
export default {
  watchQuery: ['page']
}

https://nuxtjs.org/api/pages-watchquery

why don't u use dynamic route?