Requests withoutData include header Content-Type: application/x-www-form-urlencoded

Brief bug description
Sending PUT/POST request with empty body (.withoutData()) sends content-type header: "application/x-www-form-urlencoded".
Some servers/endpoints might return 415 Unsupported Media Type for this type of requests.
This is a different approach as .NET sdk has. .NET sdk for empty body requests doesn't send content-type header at all, which is IMHO correct. Postman has a similar approach.
Repro steps
 client.publishLanguageVariant()
  .byItemId('00000000-0000-0000-0000-000000000000')
  .byLanguageId('00000000-0000-0000-0000-000000000000')
    .withoutData()
    .toPromise()
    .then((response) => {
        console.log(response)
        },
    (error) => {
        console.log(error)
    });

In the console, you should be able to see the headers of the requests and there is Content-Type header

Expected behavior
The client is not sending a content-type header for requests that don't include the body.
Test environment

node: v16.10.0; Windows 10

Hey @KristianJakubik,
Was this a problem with our API or does it only affect cases when using proxy server? I've never had any problems with this, but it's definitely good to know so I'll have a look at this.

Hi @KristianJakubik,
I've looked at code and we are not setting Content-Type: application/x-www-form-urlencoded anywhere. Rather, this appears to be set by Axios automatically as a default header (https://github.com/axios/axios/blob/e52e4dbb575fc8bd9cb7d2f5306f30ee82b40b4d/lib/defaults/index.js#L9). I'm really not sure why they do this, but maybe this is intentional and has some (to me unknown) reasons. I will not be changing or overriding their behavior unless we discover some problem with this.

We had some issues with it because we don't typically support requests/endpoints in application/x-www-form-urlencoded
format. But because of these types of requests, we had to add explicit logic for fixing the BE, as it caused a breaking change for people using the SDK.
I wanted to point out that the behavior among the SDKs are different.
The next step might be that the header we are sending is application/json, IMHO this would be a more feasible approach towards our BE, but as I said it had to be handled on our BE explicitly anyway, so it might not have priority.


scoped_providers_should_specify_dependencies lint gets triggered in tests

Describe the bug
The scoped_providers_should_specify_dependencies lint from the riverpod_lint warning gets triggered when running unit tests with ProviderScope.
To Reproduce
This happens for the example test from the docs.
testWidgets('override repositoryProvider', (tester) async {
  await tester.pumpWidget(
    ProviderScope(
      overrides: [
        // Override the behavior of repositoryProvider to return
        // FakeRepository instead of Repository.
        repositoryProvider.overrideWithValue(FakeRepository())
        // We do not have to override `todoListProvider`, it will automatically
        // use the overridden repositoryProvider
      ],
      child: MyApp(),
    ),
  );
});

Expected behavior
No warning should be generated as this is the reccomended way to override behaviour during a test.

Closing as this is not a bug now that I look a little closer, this is more of an issue that I need to specify the dependencies in the test file. Just need to figure out how to do that now 🤔

Have raised https://github.com/rrousselGit/riverpod/discussions/3048, as I couldn't find the answers I was looking for

This is a bug
The issue is https://github.com/rrousselGit/riverpod/issues/2355


I can see my previous invalid accounts in the list

QA KO: I can see my previous invalid accounts in the list. When I click on the one with invalid format, there is an error.
Expected behavior: I only see the account that have the correct format in that list (top right corner in the wallet plugin)

Originally posted by @Thykof in https://github.com/massalabs/station-massa-wallet/issues/542#issuecomment-1686337585

@Thykof can you confirm that this appears only between the breaking change versions?

@Thykof can you confirm that this appears only between the breaking change versions?

No, it appears when you have an account file that is wrongly formatted.
You end up with a wrongly formatted account file on these cases:

breaking change versions (keep in mind that appart from now we will implement retrocompatibility
user or another malicious software sabotage the account file.

'appart from now' you mean 'from now (this release)'?
We need to do this task for mainnet-ready.

I mean that if you generated account file with wallet v0.1.5, you will have wrongly formatted yaml file. Because we didn't implement retrocompatibility with that version. Appart from now, we will implement retrocompatibility, which means from version v0.2.0, the only way to end up with wrongly formatted account is sabotage the file.

@gregLibert ping

@gregLibert I have added the How to section in the issue description

added QA steps and tested: it works


Are you planning to make Jockey compatible with Android 4.0?

Hi, marverenic:) I really love your player, but i have android 4.0 and i can't use Jockey:(( Can you make Jockey work on API15(Android 4.0)? Thanks in advance, your app is gorgeous

I don't remember what in particular made 4.1 the minimum version, but I think there were a few API's related to media, notifications, and some methods I used for theming from Jelly Bean that pushed API 16 to become the minimum. It's also a bit hard to justify building apps for ICS because its emulator performance is worse than more recent versions and since it has less than 6% market share -- even Google has stopped releasing Chrome updates for ICS.
After a bit of tweaking, however (mostly to the notification and player), I've gotten Jockey to run in a 4.0.3 (API 15) emulator. There are still a lot of loose ends related to UI, but as a music player it's mostly functional. You can probably expect milestone 19 to run (or at least install) on 4.0.3+, but more than likely it will be full of exciting problems for a while.

Starting with version 0.3, Jockey no longer supports Android ICS. Compatibility may be reconsidered in the future, but for now I'd like to spend more time on features and polish than on compatibility.

You can't, basically most of the stuff support API 16+ ONLY now, because there's a few things that have been improved, or rather optimized that you won't want to or can't use on ICS. As far as I know, ICS support on everything has been long dropped off now.


feat: functional router-link, fixed #2021

cc @posva @miljan-aleksic

Sorry for the delay. Before merging this I was wondering if this could have a negative impact on performance if there're too many routes. Maybe we could cache the resolve in the future but I haven't even checked if it's worth doing

It may have small performance differences but wouldn't be those routes only rerendered if the parent does? So for example, if you wrap a long list of routes with a standard component those would get the cache benefits from it, right?

Yes, but I was thinking of a dynamic content sitting right next to a router
link, it will rerender all the time and trigger the resolve function quite
often. Imagine having a list of those, it quickly gets heavy 😂
On Wed, 28 Feb 2018, 01:48 Miljan<EMAIL_ADDRESS>wrote:

It may have small performance differences but wouldn't be those routes
only rerendered if the parent does? So for example, if you wrap a long list
of routes with a standard component those would get the cache benefits from
it, right?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/vuejs/vue-router/pull/2029#issuecomment-369080680,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAoicVV-_gcanSW1YGyj-DfO7mtL5OSuks5tZKJ1gaJpZM4Rwcsu
.

--
Eduardo San Martin Morote

Maybe those edge situations are the ones that should be solved by wrapping router-link in a stateful component :)

@posva, I have run into this issue again, is not so isolated as it seems. What can we do to push this forward?

Looking again into this, I added a test to check class and style merging happens correctly as well as other tests for #2121
I will need to change that test into a unit one in the future though

This will also close #2021

Any hopes about this getting merged? :)

Making <router-link> functional is going to be a breaking change, so this is not going to happen in router 3.x.
To more completely solve this use case here, this is what we are thinking for router v4:

<router-link> no longer renders an element of itself, instead, the user must provide the element to be rendered via normal slots or scoped slots.

<router-link to="...">
  Hello
</router-link>

<router-link to="..." self-slot-scope="{ href, navigate }">
  <my-button @click="navigate">
    x
  </my-button>
</router-link>

@yyx990803, what is a self-slot-scope? Some new concept?
Perhaps an intermeddiate router-link-scope component could fill the gap for the v3. No braking changes while providing some useful feedback for v4.

Think about self-slot-scope as a shorter version from:
<router-link to="...">
  <template slot-scope="{ href, navigate }">
    <my-button @click="navigate">
      x
    </my-button>
  </template>
</router-link>

but in this scenario, a slot-scope on my-button should also work

I never saw it, it is a new feature for next vue?

It's not something that exists yet, it's not the final api either, so don't worry much about that 🙂

@QingWei-Li Thanks a lot for the PR. Given that this change would be a breaking change and that the v-slot api cover the use cases that were initially described at https://github.com/vuejs/vue-router/issues/2021, I recommend to use that when dealing with custom components


fix(NODE-6370) response messages to large commands can be lost under load

Description
NODE-6370 describes scenarios where executing commands can hang indefinitely.
Debugging uncovered that the response messages were sometimes being lost because the 'data' listener on the socket was not active in time, which was caused by awaiting the 'drain' event before adding the 'data' listener (in readMany).
This changes when the drain event is handled. This would generally only be observable in these scenarios:

The command being sent was large enough that it could not be fully written to the kernel socket and was queued in user memory.
The load on the driver process is such that the task awaiting the 'drain' event would not be resumed before the data is received from the server. This was reproducible only scenarios where a lot of network activity is happening at once, as well as a lot of other synchronous activity (like mongoose schema parsing). In those conditions, the 'data' event may be emitted and handled (or in this case, not handled) before the task awaiting 'drain' is resumed.

What is changing?
The drain event is not awaited when the response will be read. The response cannot arrive until after socket is drained, so is unnecessary in that case. This ensures that the 'data' event will be listened to.
Is there new documentation needed for these changes?
No
What is the motivation for this change?
Current driver is unsafe for use in production environments that experience high load and save large documents.

Release Highlight

Fill in title or leave empty for no highlight

Double check the following

[X] Ran npm run check:lint script
[X] Self-review completed using the steps outlined here
[X] PR title follows the correct format: type(NODE-xxxx)[!]: description

Example: feat(NODE-1234)!: rewriting everything in coffeescript

[X] Changes are covered by tests
[X] New TODOs have a related JIRA ticket

(this area has a lot of tests covering it. A test for the actual issue is impractical)

Thanks again for your help @hunkydoryrepair! Rather than elevating the promise, we went with pause/resume so we can leave the logic contained in the write step as it relates to a new feature we're working on. Let us know if you get a chance to check if this passes your use case if you have the bandwidth.

Fixed by: https://github.com/mongodb/node-mongodb-native/pull/4249


Support webpack4

Initial checklist

[X] I agree to follow the code of conduct
[X] I searched issues and discussions and couldn’t find anything (or linked relevant results below)

Affected packages and versions
7.4.0
Link to runnable example
No response
Steps to reproduce
My project uses nuxt2 and webpack4 behind it. When I run the project, I will report errors like @milkdown/prose/commands and other dependencies cannot be found. My preliminary judgment is as follows:
The package.json of @milkdown/prose package uses exports, imports and other new features only supported by webpack5, so webpack4 cannot find modules during compilation and construction. How should I solve this problem
Expected behavior
Normal operation以上翻译结果来自有道神经网络翻译（YNMT）· 通用场景
Actual behavior
These dependencies were not found:                                                                                friendly-errors 2:11:36 PM
friendly-errors 2:11:36 PM

#minpath in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
#minproc in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
#minurl in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/commands in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/inputrules in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/keymap in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/model in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/state in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
@milkdown/prose/view in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
devlop in<EMAIL_ADDRESS>                                                                                friendly-errors 2:11:36 PM
unist-util-visit-parents/do-not-use-color in ./node_modules/unist-util-visit-parents/lib/index.js

Runtime
Chrome
OS
macOS
Build and bundle tools
Webpack

Please reproduce your problem to help yourself and us to find potential solutions. You can give us an example project or create an example in stackblitz or codesandbox. I don't sure if there is a solution because nuxt2 and webpack4 are pretty old frameworks and become or has become EOL.I suggest you search the web for those standard problems at this time. Thanks for your participation.

Why not provide dist directly in the npm package, so that don't depend on the version of the bundle tool?


Connect to an external oracle data source with a ton of tables (1400 +)

Trying to connect to an oracle data source with a ton of tables (1400 +), I'm getting this error when expanding the database to see the list of tables - The user specified schema column count is 55, which varies from the external table schema column count of 65.

Azure Data Studio Version: 1.2.4

Oracle Version: Oracle Database 12c Enterprise Edition Release <IP_ADDRESS>.0 - 64bit Production
Steps to Reproduce:

Create external table menu
Get to data source table list
Try to expand database to see table list
Get error

Manually adding tables via queries works fine.

@geleems can you take a look?
@dawazualex - I don't see the error you mention. Can you include the error text please? This will help as I think we need a bit more information here.

This is the error - The user specified schema column count is 55, which
varies from the external table schema column count of 65.
On Wed, Nov 7, 2018 at 3:39 PM Kevin Cunnane<EMAIL_ADDRESS>wrote:

@geleems https://github.com/geleems can you take a look?
@dawazualex https://github.com/dawazualex - I don't see the error you
mention. Can you include the error text please? This will help as I think
we need a bit more information here.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/azuredatastudio/issues/3160#issuecomment-436769065,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABl36WjVp59XVq_DojFVL3RU4TnZVV6aks5us0TzgaJpZM4YTKBv
.


passing the actual object to the prefilter

the name of the key is not enough in my project. I need to have more info to take a decision whether to filter or not.

Why can't you just access your LHS and RHS in your code?

Maybe I missed something but this is an example, can you tell me how do I access lhs and rhs?
diff(x, y,function(path, key) {
// return true if lhs and rhs are both dates without checking the value
})

You wouldn't be accessing them from the diff function. If we were to expand the example some, let's say we have:
var x = {
  a: 1
};
var b = {
  a: 2
};

diff(x, y, function(path, key) {
 // At this point both x and y are accessible due to the scoping of the callback.
});

As you can see both x and y are accessible within the scope due to closure. So in Javascript a function created in another function has access to the parent function's scope. This is why the library doesn't need to pass the LHS and RHS back, since in order to call the function in the first place you already have access to those variables.

That's not the point.
x and y are not lhs and rhs. let's have a more complex example:
var x = { a: { b: 1} }
var y = { a: { b: 2} }
the filter function return me a key called 'b' (a string)
I need to check that b is a Date
I can access x and y, but I don't know where b is, inside x and y.
lhs and rhs are the actual objects I need to check.
And also if you can find it out somehow in this case, I can go on with more complex objects.

@flitbit can you please have a look at this? I'm going to use your module in my testing suite if you merge this.

Makes total sense to me. Thank you

Published 0.3.2 on npm


SW-5091 Truncated multi line text

Add TruncatedTextArea component which renders conditionally within the Textfield if we are using type='textarea' and a truncation config is passed in

Since we can't predict how the text will wrap on the page, we need to measure it on the page, as a result, the truncation config needs to have a maxHeight which is cleanly divisible by the line height for the value text, otherwise you will see things get cut off.

I decided this was more simple than measuring and then figuring out what the number of lines is, and then slicing the value. Hopefully it is OK.

#488  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @nickgraz and the rest of your teammates on  Graphite

publish rc

publish rc


[YUNO] why you no implement it

@yuhsiang 😂
All in due time bud. This package is a little tricky to extract from my current project. I'll do it in bits and pieces as I get time.

@yuhsiang just for you, I made some time.. and now here you go: https://github.com/amsul/react-translated#react-translated
💪

Wow!
@amsul You are react native master!


HADOOP-16611. Make test4tests vote for -0 instead of -1

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
40
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

0
shelldocs
0
Shelldocs was not available.

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

_ trunk Compile Tests _

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

_ Patch Compile Tests _

+1
shellcheck
0
There were no new shellcheck issues.

+1
whitespace
0
The patch has no whitespace issues.

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

_ Other Tests _

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

1832

Subsystem
Report/Notes

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

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

Optional Tests
dupname asflicense shellcheck shelldocs

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

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / c89d22d

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

modules
C: . U: .

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

versions
git=2.7.4 maven=3.3.9 shellcheck=0.4.6

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

This message was automatically generated.

I actually quite like the -1, as it says "you need a good explanation".
If people are submitting patches without tests, they need good explanations.
In contrast, we don't worry so much about checkstyle -which is why we're always fighting a losing battle against adherence to the style rules.

I want people to feel uncomfortable when they submit patches without any tests. Having Yetus complaining about this avoids the personal conflict which arises when are people like me after the tests instead.
And I like to be confident that those patches which I don't review, come with tests too.

OK, htat's fine, will keep it as is.
Mind taking a look at HADOOP-16610, i.e. #1527? Thanks.


[epic] [auth] User authorization for actions

This epic will address user authorization, a user is elegible for certain action or not.
Implementation steps
There will be seperate implementaion for different actions as logic for each

[x] Create an authorization.py that encapsulates authorization logic
[x] List of roles with actions #110
[x] Create has_permission / is_allowed #111
[x] Refactor API permissions to use this (may want to create a decorator?)

Background
We have a standard access control matrix with 3 axes:

Actions: CREATE, READ, WRITE, DELETE, PURGE
Entities (object): User, Publisher, Package, Package Resource, …
Users: a user or type of user

Introducing Roles
It can be inefficient to list every user for every object. It is also cumbersome to manage in terms of business processes. For example:

Many users in an organization get same set of privileges because of their position in the organization.
We want to change the permissions associated with a certain level in the organization and to have those permissions changed for all people in that level
A user may change level frequently (ex. user may get promoted)

So we create roles

Per object roles e.g. Package Owner
Per system roles e.g. System Administrator
A list or algorithm for assigning Users => Roles

Access control algorithm: is_allowed(user, entity, action tuple)

For this user: what roles do they have related to this entity and the system?
Given those roles: what actions do they have: UNIONrole

Note: it would get more complex if some roles deny access. E.g. Role: Spammer might mean you are denied action to posting etc. Right now we don’t have that issue.

Is the desired action in that set?

Actions
Note: not an exhaustive list

Package

Package::Read
Package::Create
Package::Delete
Package::Undelete
Package::Purge
Package::Update
Package::Tag

Publisher

Publisher::Create
Publisher::AddMember
Publisher::RemoveMember
Publisher::Read

…

Roles

Package

Owner  => all actions
Editor => Read, Update, Delete (not Purge)
Viewer  => Only read

Publisher

Owner => all actions on Publisher

=> PackageOwner

Editor => PublisherViewMemberList, PublisherUpdate, PublisherDelete

=> PackageEditor

Viewer => Read

System

LoggedIn => [Package::Create, Publisher::Create]
All => Package::Read on public packages
Sysadmin => all actions

Business roles:

Publisher Owner

=> [Access Control] PublisherOwner

Publisher Member

=> PublisherEditor

(Logged in) User

=> System::LoggedIn

Visitor

NOTE: business roles and authorization roles are distinct. Of course, in implementing access control we will use the business logic inherent in business roles. However, business roles are not explicitly present in the access control system.
Algorithm
# package here is passed as a Package instance Package(53) not as a string.
# raises question of how to indicate class of all packages.
def is_allowed(rufus, Package(53), 'Package::Delete')
    roles = get_roles(rufus, Package(53))
    for role in roles:
        if role in get_actions(role):
		return True
    return False

def get_roles(rufus, package):
	roles = []
	If rufus is sysadmin:
		roles.append(Roles.Sysadmin)
	if package.__type__ = ‘Package’:
		if rufus is Owner Package.Owner (a Publisher):
			return [Package::Owner]
		elif rufus is Owner Package.Owner (a Publisher):
			return [Package::Editor]
		else: # in future when private packages this would be different
                    return [Package::Viewer]
	return roles

# Role List
{
	“Sysadmin”: [ action1, action2]
	“Package::Owner”: {}
}

# Could do as a matrix.
# For now the simple dict approach is probably sufficient
	Role: A, B, C
Action X	Y, N, N
Action Y	Y, Y, N
...

Future - API
Do we need an API for auth. Not sure we do since used entirely internally. Maybe useful in frontend if you want to decide whether to show an option to do something. Overall doubtful we need this atm.
Base: /api/authz/ OR /api/auth/access (tbd)
API to check auth:
GET  BASE/{user}/{entity-id}/{action}

e.g.

../this-user/Package::53/Package::READ

Returns: { status: true | false }

API to grant and revoke access:
POST /api/auth/access
DELETE /api/auth/access
Body : {"user_id": <id>, "actions": [<action names>]}

Fixed


Added support for floats.  See related issue.

Now floats will pad.

This is a better pull request.

Adding lodash as a dependency for a module as small and simple as this feels pretty silly, especially when it could be replaced with a simple for or while loop. It's more bloat than efficiency. And speaking of efficiency, the math approach is pretty illegible and slow - a simple regex approach using /(\d+)(\.\d+)/works much faster based on quick testing (see this jsperf).
With all that said, I'm not even sure if I'd want zpad to pad floats like this all the time - the basic idea of padding is to get strings of equal length, and decimals could easily wreck that. With that in mind, I'm considering adding an extra parameter float, where you could define padding for decimals. The idea is that you could then do this:
var zpad = require('zpad').amount(3).float(5); // => will give strings with length 9 minimum

zpad(35.582);     // => 035.58200
zpad(2.48);       // => 002.48000
zpad(0);          // => 000.00000
zpad(847.2248);   // =>  847.22480
zpad(5982.493103) // => 5982.493103

zpad.float(null) // no special float treatment, default?
zpad(3.2) // => 3.2
zpad(.2)  // => 0.2

zpad.float(0) // ignores floats
zpad(4.2873) // => 004.2873

So basically, setting zpad.float(0) would give the behavior you desire here. I'm a bit undecided on what to have as the default behavior, though - keep the current one, or use .float(0)?


Varps incorrect for Desert Elite Diary

Per the image attached, I am missing the Wild Pie, Ice Barrage and KQ Head steps.  However, QH states that I am missing the Grand Gold Chest and Dragon Darts steps incorrectly.

It seems QH thinks I havent done 'Teleport to Pollniveach' for the medium diary fyi, so that varp is probably off as well.


PROD: Create a hosted Azure SQL database on Azure

As a developer I want the database to be hosted on Azure, to have a central server which stores the data.

Acceptance Criteria
1. The Azure SQL Server to use SQL Login to use as connection string
2. Name of database server should follow: bdsagroup<no>-chirpdb, where <no> is replaced with your group number.
Link

sql data base created via azure
not integrated yet with own chirp project (connection strings)


mingw usage?

hello,
i am trying to use the library with https://github.com/tpoechtrager/wclang in order to compile a PE from linux. i have tried with both clang-6 and clang-8 but i always get the following error:
$ ./x86_64-w64-mingw32-clang++ -Wall --pedantic hello.cpp -o hello.exe
In file included from hello.cpp:8:
In file included from ./inline_syscall/include/in_memory_init.hpp:20:
In file included from ./inline_syscall/include/inline_syscall.hpp:103:
./inline_syscall/include/inline_syscall.inl:61:28: warning: inline variables are a C++17 extension [-Wc++17-extensions]
                "_sysc")]] inline static JM_INLINE_SYSCALL_ENTRY_TYPE entry{ Hash };
                           ^
hello.cpp:18:24: error: implicit instantiation of undefined template 'jm::syscall_function<long long (*)()>'
    NTSTATUS status  = INLINE_SYSCALL(NtAllocateVirtualMemory)((HANDLE)-1, &allocation, 0, &size, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
                       ^
./inline_syscall/include/inline_syscall.hpp:26:5: note: expanded from macro 'INLINE_SYSCALL'
    INLINE_SYSCALL_MANUAL(               \
    ^
./inline_syscall/include/inline_syscall.hpp:44:5: note: expanded from macro 'INLINE_SYSCALL_MANUAL'
    ::jm::syscall_function<decltype(function_pointer)> { syscall_id }
    ^
./inline_syscall/include/inline_syscall.hpp:55:11: note: template is declared here
    class syscall_function;
          ^
1 warning and 1 error generated.

The source code of hello.cpp is the following:
#include <winternl.h>
#include <ntstatus.h>
#include <windows.h>
#include <iostream>

// This header contains the initialization function.
// If you already initialized, inline_syscall.hpp contains all you need.
#include "inline_syscall/include/in_memory_init.hpp"

int main() {
    FARPROC NtAllocateVirtualMemory = GetProcAddress(GetModuleHandle("NTDLL.DLL"), "NtAllocateVirtualMemory");
    // Needs to be called once at startup before INLINE_SYSCALL is used.
    jm::init_syscalls_list();

    // Usage of the main macro INLINE_SYSCALL
    void* allocation = nullptr;
    SIZE_T size      = 0x1000;
    NTSTATUS status  = INLINE_SYSCALL(NtAllocateVirtualMemory)((HANDLE)-1, &allocation, 0, &size, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
    return 0;
}

any idea on how to fix the template error?

Try adding c++17 flag -std=c++17
NtAllocateVirtualMemory needs to have the correct type:

#include <winternl.h>
#include <ntstatus.h>
#include <windows.h>
#include <iostream>

// This header contains the initialization function.
// If you already initialized, inline_syscall.hpp contains all you need.
#include "inline_syscall/include/in_memory_init.hpp"

// I'd recommend https://github.com/processhacker/phnt for these definitions
NTSTATUS NtAllocateVirtualMemory(HANDLE ProcessHandle, PVOID *BaseAddress, ULONG_PTR ZeroBits, PSIZE_T   RegionSize, ULONG AllocationType, ULONG Protect);

int main() {
    // Needs to be called once at startup before INLINE_SYSCALL is used.
    jm::init_syscalls_list();

    // Usage of the main macro INLINE_SYSCALL
    void* allocation = nullptr;
    SIZE_T size      = 0x1000;
    NTSTATUS status  = INLINE_SYSCALL(NtAllocateVirtualMemory)((HANDLE)-1, &allocation, 0, &size, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
    return 0;
}

it works, thank you @JustasMasiulis !
i have another question: is it possible to check at runtime if the syscall is available on the host operating system? eg:
if (!GetProcAddress(GetModuleHandle("NTDLL.DLL"), "NtQuerySecurityPolicy")) {
	// NtQuerySecurityPolicy is not available, os < win10
}

You can use modified version of init function (didn't test - wrote it up in the comment editor)

template<std::uint32_t Hash>
JM_INLINE_SYSCALL_FORCEINLINE bool syscall_present_impl() {
    ::jm::detail::exports_directory exports(static_cast<const char*>(::jm::detail::ntdll_base()));
    for(auto i = exports.size();; --i) {
        if(::jm::hash(exports.name(i)) == Hash)
            return true;
    }
    return false;
}
#define SYSCALL_PRESENT(syscall_name) (syscall_present_impl<::jm::hash(#syscall_name)>())

Define syscall entry type to syscall_entry_full and check if ID is 0 (won't work for 0th syscall but eh)
Create your own init function which does more handling.

thanks again!


[MDEPLOY-311] Pass on 'packaging' when creating artifact to upload

Fixes a regression introduced in
16541da43c51237cf7183c4500a576108ad946b8 [MDEPLOY-296] which caused the -Dpackaging property to be ignored when uploading the artifact. Instead, the packaging type during upload was always derived from the file name.

Following this checklist to help us incorporate your
contribution quickly and easily:

[X] Make sure there is a JIRA issue filed
for the change (usually before you start working on it).  Trivial changes like typos do not
require a JIRA issue.  Your pull request should address just this issue, without
pulling in other changes.
[X] Each commit in the pull request should have a meaningful subject line and body.
[X] Format the pull request title like [MDEPLOY-XXX] - Fixes bug in ApproximateQuantiles,
where you replace MDEPLOY-XXX with the appropriate JIRA issue. Best practice
is to use the JIRA issue title in the pull request title and in the first line of the
commit message.
[X] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[X] Run mvn clean verify to make sure basic checks pass. A more thorough check will
be performed on your pull request automatically.
[X] You have run the integration tests successfully (mvn -Prun-its clean verify).

If your pull request is about ~20 lines of code you don't need to sign an
Individual Contributor License Agreement if you are unsure
please ask on the developers list.
To make clear that you license your contribution under
the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

[X] I hereby declare this contribution to be licenced under the Apache License Version 2.0, January 2004

[ ] In any other case, please file an Apache Individual Contributor License Agreement.

your assumptions is wrong,
generally packaging may be different then deployed file extension, eg
packaging ejb has extension jar

Something is fishy about this PR, but I think I understand the intent.... is the generated POM/packaging wrong?

Superded by https://github.com/apache/maven-deploy-plugin/pull/71

Awesome, thanks!


Sprite animations issue after "loadTexture" method is used

This Issue is about

A bug in the API
A problem with my own code

I'm not sure if this is an API bug or a problem in my code.
What's happening is that I preload two spritesheets, one containing 4 frames and another one containing 5.
Then, I create a sprite based on my first spritesheet (4 frames) and add two animations to it.
If I play mi first animation (4 frames) everything's ok. Then, I try to load a new texture for my sprite via loadTexture and then play its corresponding animation, and that's where something weird occurs: my animation lacks of its last frame (the fifth).
It seems that I can't load a texture with a different number of frames than the very first one (that I used to create my sprite) has.
The problem gets worse with textures with less frames
I know that it's optimal to use an atlas, but... can't we use this approach? Is it a known limitation?
Sample code is here:
https://app.box.com/s/2da3mgt6xuzzb915cdzxa2gl4v3pv2ek

As you've identified when a new texture is loaded, none of the existing animation frames are removed or modified. You could possibly try calling sprite.animations.loadFrameData(img.frameData, frame) (where img is taken from Cache.getImage) but this is unfortunately still really just trying to work around a system that was never meant to handle texture swapping mid-animation like this.

Thanks for clearing this out, Richard.

I'd be curious to know how you would like the Animation system to handle frames split over multiple textures. I.e. how would you like the API to change so you can specify this? I'm thinking maybe something like giving the texture key before the frame name? Or blocking them into objects.. i.e.: animations.add('shoot', { texture1: [0,1,2,3], texture2: [0,1,2,3,4,5,6] )
Because I'm well aware Phaser doesn't support this now, and I want it to.

Regarding to your first comment, I've tried this:
sprite.animations.loadFrameData(fame.cache.getFrameData("texture_key");
And then I tried to play the new animations, but it doesn't work: some weird visual effect occurs.
Maybe the API only needs to take account on the size and number of frames that the new texture has. For example:
function preload() {
game.load.spritesheet("key1", null, 27, 63, 4);
game.load.spritesheet("key2", null, 31, 69, 5);
}
function create() {
mySprite= game.add.sprite(0, 0, "key1");
mySprite.animations.add("anim1", null, 6, true);
mySprite.animations.add("anim2", null, 12, false);
mySprite.play("key1");
Later in the code:
mySprite.loadTexture("key2", 0, true);
mySprite.play("anim2");
The "loadTexture" method stops the current animation before loading the new texture and before showing the frame number 0, in this case. It should reset the "frameTotal" and "_frames" properties of anim1 and anim2 to 5 and [0, 1, 2, 3, 4, 5] because I set its optional "frames" Array property to null when I defined them at the "preload()" method, and this means that I want to use all available frames.
Nevertheless, you propose a new interesting approach to this matter: it'll be great if we could link any animation to a any key spritesheet by passing an object parameter instead of one array parameter containing frame numbers or names. So, finally, the "animations.add" method could be this way:
add(name, frames, frameRate, loop, useNumericIndex)
where the frames parameter continues to be optional (null, by default) but could be an array or an object.
If an array is given, it behaves as usual: the API takes an array of numbers/strings that correspond to the frames to add to the animation and in which order. e.g. [1, 2, 3] or ['run0', 'run1', run2]). If null then all frames will be used.
But, if an object is given in this form:
mySprite.animations.add('shoot', { texture1: [0,1,2,3], texture2: ["gun0", "gun1", "gun2", "gun3", "gun4", "gun5", "gun6"], texture3: null })
The API now interprets that we want this animation to have three different "flavors": one that uses texture1 -which is an spritesheet-  and its frames from 0 to 3, another one that uses texture2 -an atlas- and its frames named gun0 ... gun6, and finally texture3, an spritesheet from which we use all available frames.
Obviously, we'll need a method to switch between "texture modes" later in our game.
It seems like a non-trivial improvement for the API, but it provides a new useful way to handle sprites.
What do you think?

I believe if you set the animation up to span multiple textures then it should swap between them automatically for you. I like the idea of mixing atlas + sprite sheets like above, that makes sense (although I suspect very rare)

Thank you for taking the time to open this issue. However, official support for Phaser 2 has now ended as we focus on preparing Phaser 3 for beta release. In a bid to keep the project tidy, and avoid confusion, we are closing all v2 related issues.
This does not mean your issue won't be looked-at. In November 2016 the Phaser CE (Community Edition) project began. The aim of Phaser CE was to allow the community to continue v2 development. Since then it has gained significant traction, with many updates and releases.
If you are still interested in having your issue investigated we strongly recommend testing the latest Phaser CE release. And only if the problem persists, opening an issue on the Phaser CE repo.


Update optional egress example

Additional configuration to well define the ServiceEntry on electronic-shop demo using an egress gateway

Thanks @leandroberetta, yes, the readme needs to be updated, I'll add a followup commit.


Update vllm to 0.4.0

Update vllm to 0.4.0. Will run tests after the nightly image is generated.

close given we had a different PR merged for the same purpose


Setting cutoff_time to values lower than the row's current time_index fails aggregation

Bug Description
I'm generating historical features for the current row. For example, the number of transactions made in the last hour during a session.
I set cutoff_time as time_index value - 1 second, so I expect the features to be based on historical data minus the current row. This allows including the response variable from historical rows.
The problem is, when this parameter does not equal the time_index variable, I get a bunch of NaNs in the original and generated features.
The code:
#!/usr/bin/env python3

import featuretools as ft
import pandas as pd
from featuretools import primitives, variable_types

data = ft.demo.load_mock_customer()

transactions_df = data['transactions']
# ISSUE:
transactions_df['cutoff_time'] = transactions_df['transaction_time'] - pd.Timedelta(seconds=1)

es = ft.EntitySet('transactions_set')
es.entity_from_dataframe(
    entity_id='transactions',
    dataframe=transactions_df,
    variable_types={
        'transaction_id': variable_types.Index,
        'session_id': variable_types.Id,
        'transaction_time': variable_types.DatetimeTimeIndex,
        'product_id': variable_types.Id,
        'amount': variable_types.Numeric,
        'cutoff_time': variable_types.Datetime
    },
    index='transaction_id',
    time_index='transaction_time'
)
es.normalize_entity(
    base_entity_id='transactions',
    new_entity_id='sessions',
    index='session_id'
)
es.add_last_time_indexes()

fm, features = ft.dfs(
    entityset=es,
    target_entity='transactions',
    agg_primitives=[primitives.Sum, primitives.Count],
    trans_primitives=[primitives.Day],
    cutoff_time=transactions_df[['transaction_id', 'cutoff_time']].
        rename(index=str, columns={'transaction_id': 'transaction_id', 'cutoff_time': 'time'}),
    training_window='1 hours',
    verbose=True
)

print(fm)

Output (excerpt):
                DAY(cutoff_time)  sessions.SUM(transactions.amount)  \
transaction_id
352                          NaN                                NaN
186                          NaN                                NaN
319                          NaN                                NaN
256                          NaN                                NaN
449                          NaN                                NaN
40                           NaN                                NaN
13                           NaN                                NaN
127                          NaN                                NaN
21                           NaN                                NaN
309                          NaN                                NaN

Column sessions.SUM(transactions.amount) is supposed to be >= 0. Original features session_id  product_id  amount are all NaN as well.
If transactions_df['cutoff_time'] = transactions_df['transaction_time'] (no time delta), this code produces proper values but includes the current row.
I also submitted it as a question on SO, but the code above seems to be right. For example, the handling time example works because the cutoff times are set for the entity we group by. It also produces some NaNs, which I think must be zeros:
#!/usr/bin/env python3

import featuretools as ft

es = ft.demo.load_mock_customer(return_entityset=True)

import pandas as pd

cutoff_times = pd.DataFrame({
    "customer_id": [1, 2, 3, 4, 5],
    "time": pd.date_range('2014-01-01 01:41:50', periods=5, freq='25min')
})

feature_matrix, features = ft.dfs(
    entityset=es,
    target_entity="customers",
    cutoff_time=cutoff_times
)

print(feature_matrix)

             STD(transactions.amount)  MAX(transactions.amount)  \
customer_id
1                           43.143511                    148.14
2                           41.140046                    139.23
3                           45.708958                    147.73
4                                 NaN                       NaN
5                           39.139809                    141.66

@antontarasenko This is intended behavior for this case, but I put up an answer on StackOverflow to your question.
I'm going to close this issue, but we can continue discussing on StackOverflow.
Thanks for posting this question. We're happy to help


Failed to get document because the client is offline

whenever i try to log in anonymously or with mail i get this message "Failed to get document because the client is offline" from firebase

Hi @Juanca24691!
As mentioned in this duplicate, this error seems to be related to a Firebase bug that the maintainers already tried to fix. Anyway, as you can see in the Stack Overflow answers, the users are still encountering this issue randomly.
Most often it goes away with just a refresh. Please make sure to not be offline and retry.
I've tried to sign in many times today after seeing your issue and everything went fine each time.
Please keep me posted.
Thanks

Hey @Juanca24691!
I just replied to the latest issue you raised regarding some slowness you're encountering: this makes me realize that you managed to make it work and you successfully signed in.
Therefore, I am closing this issue.
Thanks!


Clone a brew's tags when cloning a brew.

Per Element conversation.

Easy enough. Looks good! Thanks @dbolack-ab ⭐ 🎉 💯


Update for more sales analytic reports on dashboardwidgets

file location -> app/admin/dashboardwidgets/statistics.php
`<?php namespace Admin\DashboardWidgets;
use Admin\Classes\BaseDashboardWidget;
use Admin\Models\Customers_model;
use Admin\Models\Orders_model;
use Admin\Models\Reservations_model;
use Carbon\Carbon;
/**

Statistic dashboard widget.
/
class Statistics extends BaseDashboardWidget
{
/*

@var string A unique alias to identify this widget.
*/
protected $defaultAlias = 'statistics';

/**

Renders the widget.
*/
public function render()
{
$this->prepareVars();
return $this->makePartial('statistics/statistics');
}

public function defineProperties()
{
return [
'context' => [
'label' => 'admin::lang.dashboard.text_context',
'default' => 'sale',
'type' => 'select',
'options' => $this->getContextOptions(),
],
'range' => [
'label' => 'admin::lang.dashboard.text_range',
'default' => 'week',
'type' => 'select',
'options' => [
'day' => 'lang:admin::lang.dashboard.text_today',
'yesterday' => 'lang:admin::lang.dashboard.text_yesterday',
'daybeforeyesterday' => 'lang:admin::lang.dashboard.text_daybeforeyesterday',
'week' => 'lang:admin::lang.dashboard.text_week',
'month' => 'lang:admin::lang.dashboard.text_month',
'year' => 'lang:admin::lang.dashboard.text_year',
'custom' => 'lang:admin::lang.dashboard.text_custom_date',
],
],
];
}
public function listContext()
{
return [
'sale' => [
'label' => 'lang:admin::lang.dashboard.text_total_sale',
'icon' => ' bg-success text-white fa fa-line-chart',
],
'lost_sale' => [
'label' => 'lang:admin::lang.dashboard.text_total_lost_sale',
'icon' => ' bg-danger text-white fa fa-line-chart fa-rotate-180',
],
'cash_payment' => [
'label' => 'lang:admin::lang.dashboard.text_total_cash_payment',
'icon' => ' bg-warning text-white fa fa-money-bill',
],
'customer' => [
'label' => 'lang:admin::lang.dashboard.text_total_customer',
'icon' => ' bg-info text-white fa fa-users',
],
'order' => [
'label' => 'lang:admin::lang.dashboard.text_total_order',
'icon' => ' bg-success text-white fa fa-shopping-cart',
],
'delivery_order' => [
'label' => 'lang:admin::lang.dashboard.text_total_delivery_order',
'icon' => ' bg-primary text-white fa fa-truck',
],
'collection_order' => [
'label' => 'lang:admin::lang.dashboard.text_total_collection_order',
'icon' => ' bg-info text-white fa fa-shopping-bag',
],
'completed_order' => [
'label' => 'lang:admin::lang.dashboard.text_total_completed_order',
'icon' => ' bg-success text-white fa fa-receipt',
],
'reserved_table' => [
'label' => 'lang:admin::lang.dashboard.text_total_reserved_table',
'icon' => ' bg-primary text-white fa fa-table',
],
'reserved_guest' => [
'label' => 'lang:admin::lang.dashboard.text_total_reserved_guest',
'icon' => ' bg-primary text-white fa fa-table',
],
'reservation' => [
'label' => 'lang:admin::lang.dashboard.text_total_reservation',
'icon' => ' bg-success text-white fa fa-table',
],
'completed_reservation' => [
'label' => 'lang:admin::lang.dashboard.text_total_completed_reservation',
'icon' => ' bg-success text-white fa fa-table',
],
];
}
public function getContextOptions()
{
return array_map(function ($context) {
return array_get($context, 'label');
}, $this->listContext());
}
public function getContextLabel($context)
{
return array_get(array_get($this->listContext(), $context, []), 'label', '--');
}
public function getContextColor($context)
{
return array_get(array_get($this->listContext(), $context, []), 'color', 'success');
}
public function getContextIcon($context)
{
return array_get(array_get($this->listContext(), $context, []), 'icon', 'fa fa-bar-chart-o');
}
public function loadAssets()
{
$this->addCss('css/statistics.css', 'statistics-css');
}
protected function prepareVars()
{
$this->vars['statsContext'] = $context = $this->property('context');
$this->vars['statsLabel'] = $this->getContextLabel($context);
$this->vars['statsIcon'] = $this->getContextIcon($context);
$this->vars['statsCount'] = $this->callContextCountMethod($context);
$this->vars['statsRange'] = $this->getRange($this->property('range'));
}
protected function callContextCountMethod($context)
{
$count = 0;
$contextMethod = 'getTotal'.studly_case($context).'Sum';
if (method_exists($this, $contextMethod))
$count = $this->$contextMethod($this->property('range'));
 return $count;

}
protected function getRange($range)
{
if ($range === 'yesterday') {
$start = Carbon::now()->subDay();
$start = $start->setTime(00, 00);
$end = Carbon::now()->subDay();
$end = $end->setTime(23, 59, 59);
$date = 'Start Datum: '.$start.' Eind Datum: '.$end;
return($date);
}
else if ($range === 'daybeforeyesterday') {
$start = Carbon::now()->subDay(2);
$start = $start->setTime(00, 00);
$end = Carbon::now()->subDay(2);
$end = $end->setTime(23, 59, 59);
$date = 'Start Datum: '.$start.' Eind Datum: '.$end;
return($date);
}
else if ($range === 'day') {
$start = Carbon::now();
$start = $start->setTime(00, 00);
$date = 'Start Datum: '.$start.' Eind Datum: '.Carbon::now();
return($date);
}
else if ($range === 'week') {
$start = Carbon::now()->subWeek();
$date = 'Start Datum: '.$start.' Eind Datum: '.Carbon::now();
return($date);
}
else if ($range === 'month') {
$start = Carbon::now()->subMonth();
$date = 'Start Datum: '.$start.' Eind Datum: '.Carbon::now();
return($date);
}
else if ($range === 'year') {
$start = Carbon::now()->startOfYear();
$date = 'Start Datum: '.$start.' Eind Datum: '.Carbon::now();
return($date);
}
}
protected function applyRangeQuery($query, $range)
{
if ($range === 'yesterday') {
$start = Carbon::now()->subDay();
$start = $start->setTime(00, 00);
$end = Carbon::now()->subDay();
$end = $end->setTime(23, 59, 59);
$query->whereBetween('date_added', [
$start,
$end,
]);
}
else if ($range === 'daybeforeyesterday') {
$start = Carbon::now()->subDay(2);
$start = $start->setTime(00, 00);
$end = Carbon::now()->subDay(2);
$end = $end->setTime(23, 59, 59);
$query->whereBetween('date_added', [
$start,
$end,
]);
}
else if ($range === 'day') {
$start = Carbon::now();
$start = $start->setTime(00, 00);
$query->whereBetween('date_added', [
$start,
Carbon::now(),
]);
}
else if ($range === 'week') {
$start = Carbon::now()->subWeek();
$query->whereBetween('date_added', [
$start,
Carbon::now(),
]);
}
else if ($range === 'month') {
$start = Carbon::now()->subMonth();
$query->whereBetween('date_added', [
$start,
Carbon::now(),
]);
}
else if ($range === 'year') {
$start = Carbon::now()->startOfYear();
$query->whereBetween('date_added', [
$start,
Carbon::now(),
]);
}
}
/**

Return the total amount of order sales

@param $range

@return string
*/
protected function getTotalSaleSum($range)
{
$query = Orders_model::query();
$query->where('status_id', '>', '0')
->where('status_id', '!=', setting('canceled_order_status'));
$this->applyRangeQuery($query, $range);
return currency_format($query->sum('order_total') ?? 0);
}

/**

Return the total amount of lost order sales

@param $range

@return string
*/
protected function getTotalLostSaleSum($range)
{
$query = Orders_model::query();
$query->where(function ($query) {
$query->where('status_id', '<=', '0');
$query->orWhere('status_id', setting('canceled_order_status'));
});
$this->applyRangeQuery($query, $range);
return currency_format($query->sum('order_total') ?? 0);
}

/**

Return the total amount of cash payment order sales

@param $range

@return string
*/
protected function getTotalCashPaymentSum($range)
{
$query = Orders_model::query();
$query->where(function ($query) {
$query->where('status_id', '>', '0');
$query->where('status_id', '!=', setting('canceled_order_status'));
})->where('payment', 'cod');
$this->applyRangeQuery($query, $range);
return currency_format($query->sum('order_total') ?? 0);
}

/**

Return the total number of customers

@param $range

@return int
*/
protected function getTotalCustomerSum($range)
{
$query = Customers_model::query();
$this->applyRangeQuery($query, $range);
return $query->count();
}

/**

Return the total number of orders placed

@param $range

@return int
*/
protected function getTotalOrderSum($range)
{
$query = Orders_model::query();
$this->applyRangeQuery($query, $range);
return $query->count();
}

/**

Return the total number of completed orders

@param $range

@return int
*/
protected function getTotalCompletedOrderSum($range)
{
$query = Orders_model::query();
$query->whereIn('status_id', setting('completed_order_status') ?? []);
$this->applyRangeQuery($query, $range);
return $query->count();
}

/**

Return the total number of delivery orders

@param string $range

@return int
*/
protected function getTotalDeliveryOrderSum($range)
{
$query = Orders_model::query();
$query->where(function ($query) {
$query->where('order_type', '1');
$query->orWhere('order_type', 'delivery');
});
$this->applyRangeQuery($query, $range);
return currency_format($query->sum('order_total') ?? 0);
}

/**

Return the total number of collection orders

@param $range

@return int
*/
protected function getTotalCollectionOrderSum($range)
{
$query = Orders_model::query();
$query->where(function ($query) {
$query->where('order_type', '2');
$query->orWhere('order_type', 'collection');
});
$this->applyRangeQuery($query, $range);
return currency_format($query->sum('order_total') ?? 0);
}

/**

Return the total number of reserved tables

@param $range

@return int
*/
protected function getTotalReservedTableSum($range)
{
$query = Reservations_model::with('tables');
$query->where('status_id', setting('confirmed_reservation_status'));
$this->applyRangeQuery($query, $range);
$result = $query->get();
$result->pluck('tables')->flatten();
return $result->count();
}

/**

Return the total number of reserved table guests

@param $range

@return int
*/
protected function getTotalReservedGuestSum($range)
{
$query = Reservations_model::query();
$query->where('status_id', setting('confirmed_reservation_status'));
$this->applyRangeQuery($query, $range);
return $query->sum('guest_num') ?? 0;
}

/**

Return the total number of reservations

@param $range

@return int
*/
protected function getTotalReservationSum($range)
{
$query = Reservations_model::query();
$query->where('status_id', '!=', setting('canceled_reservation_status'));
$this->applyRangeQuery($query, $range);
return $query->count();
}

/**

Return the total number of completed reservations

@param $range

@return int
*/
protected function getTotalCompletedReservationSum($range)
{
$query = Reservations_model::query();
$query->where('status_id', setting('confirmed_reservation_status'));
$this->applyRangeQuery($query, $range);
return $query->count();
}
}`

It seems your changes have come through as a comment rather than commits. You should fork the repository to your own account, create a branch from develop, commit the changes and then open a Pull request against the main develop branch

oke lets try again,
forked it, update some code, and commited it, pushed it. now lets merge it :D

I also have 80% of all dutch translations, where can i add these?

oke lets try again,
forked it, update some code, and commited it, pushed it. now lets merge it :D

this is the commit id : 4c5319059e474fb0c0c110c18a44bbc84a1b6502

Thanks. Did you fork from develop or master? If not develop please refork from there and make changes.
There are quite a few files edited that will cause conflict (language, orders model).  Can you try and tidy it up so the changes are as minimal as possible - then that makes it possible to test simply.
You should also open it as a pull request - you can do that either through the Github app or their web interface. Again target the develop branch rather than master.

On 28 Oct 2020, at 08:24, Max Clasener<EMAIL_ADDRESS>wrote:

oke lets try again,
forked it, update some code, and commited it, pushed it. now lets merge it :D
this is the commit id : 4c53190
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thanks. Did you fork from develop or master? If not develop please refork from there and make changes. There are quite a few files edited that will cause conflict (language, orders model). Can you try and tidy it up so the changes are as minimal as possible - then that makes it possible to test simply. You should also open it as a pull request - you can do that either through the Github app or their web interface. Again target the develop branch rather than master.
…
On 28 Oct 2020, at 08:24, Max Clasener @.***> wrote:  oke lets try again, forked it, update some code, and commited it, pushed it. now lets merge it :D this is the commit id : 4c53190 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

Hi Ryan, i did fork the dev branche 👍

Thanks. I think you need to look at the diff on the files as there are a lot that shouldn’t be changed. Let me know once those are tidied up.

On 28 Oct 2020, at 10:37, Max Clasener<EMAIL_ADDRESS>wrote:

Thanks. Did you fork from develop or master? If not develop please refork from there and make changes. There are quite a few files edited that will cause conflict (language, orders model). Can you try and tidy it up so the changes are as minimal as possible - then that makes it possible to test simply. You should also open it as a pull request - you can do that either through the Github app or their web interface. Again target the develop branch rather than master.
…
On 28 Oct 2020, at 08:24, Max Clasener @.***> wrote:  oke lets try again, forked it, update some code, and commited it, pushed it. now lets merge it :D this is the commit id : 4c53190 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
Hi Ryan, i did fork the dev branche 👍
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Here's a good guide on creating your first pull request.

Here's a good guide on creating your first pull request.

i did fork and pushed to the dev repo. ( see screenshot gitkraken)

Thanks. I think you need to look at the diff on the files as there are a lot that shouldn’t be changed. Let me know once those are tidied up.
…
On 28 Oct 2020, at 10:37, Max Clasener @.> wrote:  Thanks. Did you fork from develop or master? If not develop please refork from there and make changes. There are quite a few files edited that will cause conflict (language, orders model). Can you try and tidy it up so the changes are as minimal as possible - then that makes it possible to test simply. You should also open it as a pull request - you can do that either through the Github app or their web interface. Again target the develop branch rather than master. … On 28 Oct 2020, at 08:24, Max Clasener @.> wrote:  oke lets try again, forked it, update some code, and commited it, pushed it. now lets merge it :D this is the commit id : 4c53190 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Hi Ryan, i did fork the dev branche 👍 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

I made minor changes to language file this because some of the widget statics needed new text .

The screenshot link is broken

@BlueRayNL I've been working on a reports extension... it maybe worth having a look and getting involved in that? https://github.com/ryanmitchell/ti-ext-reports

nice, i look into it :)

Great - I could do with some help with the charts and extending it further for marketplace releast


Update CONTRIBUTING.md

The FCC open source project is called Open Source for Good. This is an unnecessary change to the contributing readme though.


kakoune: update to version 2019.12.10

Description of package
Kakoune: https://github.com/mawww/kakoune
Updated to latest release (v2019.12.10): https://github.com/mawww/kakoune/releases/tag/v2019.12.10
Checklist

[x] Latest upstream version.
[x] I agree to maintain this package (required).
[x] I agree to notify KISS if I can no longer maintain this package (required).

:+1:


Missing connection on PCB v1.0.0

Hi,
I started to build this computer and I saw that on PCB v1.0.0 pins D5/9+D6/10+D1/3 are not connected with any output. They should be connected with pin D9/9 (BK-). Also schematic must be corrected, the right signal on this must be BK-.
I was lucky because I saw your notice regarding wrong power pins for D24 and D25 before solder them, otherwise it was a good chance to lose the "magic smoke" from inside.

Thanks for your comment, I'll fix it soon


create final blog for Xueyuan

Thanks @Xueyuan-ren -- I'm closing this PR and will cherry-pick 9fb000a into a new pull request.


chore: allow dataclasses >= 0.6, < 0.9

resolves #3150
Description
As asked in #3150 dataclasses could be allowed to vary more to make dbt cohabit with other projects which rely on version of dataclasses >0.6.
@jtcohen6 thanks for the pointers in the ticket
A long time ago when I contributed to dbt I remember the CI doesn't run on external PRs is that still the case? If so, how should we go about checking that this change doesn't break as you instructed in #3150 ?
Checklist

[x] I have signed the CLA
[x] I have run this code in development and it appears to resolve the stated issue

well, i've been able to add dbt as a dependency on dbt-sugar via poetry successfully because the resolver isn't upset anymore ✨

[ ] This PR includes tests, or tests are not required/relevant for this PR
[ ] I have updated the CHANGELOG.md and added information about my change to the "dbt next" section.

not sure if this is worthy of a changelog update but if so let me know and I can add a little thing

This pull request isn't mergeable because it points to your private versions of hologram. I guess you just want to see if the CircleCI tests pass?

@gshank yes that's what @jtcohen6 advised to do. So it will go like this:

get the hologram PR merged: https://github.com/fishtown-analytics/hologram/pull/42
if we're good here (which it looks it is) we can point to the newer version of hologram (I think I'll have to wait for a green light to know if a new version tag has been generated and repo is available on PyPI
check all works fine still and then you folks should be able to merge it.

@gshank ah I see you merged the hologram PR. Let me know when there's a new version that I can replace the pointer to fork with

There's a new version, 0.0.14

Damn that's blazing fast @gshank I'll update in a wee bit.

@gshank alright change done.
Btw, I had a question in the PR description around this checklist item:

I have updated the CHANGELOG.md and added information about my change to the "dbt next" section.
not sure if this is worthy of a changelog update but if so let me know and I can add a little thing

Let me know what you think and I can change accordingly.


Implement leaf first traversal

Needed for scalagen
Will not affect existing code.
Note: Implicit param has been added to the traverse method, so this is a bin-compat issue.

This fixes #1191

Let's leave this PR outstanding for now. I'll try and whip something up for scalagen specfically for now.
If possible, I would like to convert the AST/Traversal macros to generators before scalameta 3.0. That way the generators would be a lot more approachable than the current macro based code for modifying.

@DavidDudson if we're gonna whip up something in scalagen I propose we close this PR. I'd love to expose more configurable traversal strategies in the main scalameta API but I think we should

consider how to do it without breaking the existing API
get more hands-on experience with it in scalagen
In scalafix, I also have a lot of scalameta utilities that should probably go upstream at some point.

Fair enough


Update ConvectivaTecnologia.RMCConvectiva.locale.pt-BR.yaml

Checklist for Pull Requests

[ ] Have you signed the Contributor License Agreement?
[ ] Is there a linked Issue?

Manifests

[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

Note: <path> is the directory's name containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Hi @ederpardeiro,
Automatic Validation ended with:

##[error] Manifest Error: The multi file manifest has inconsistent field values. [PackageVersion] Value: 1.8 File: ConvectivaTecnologia.RMCConvectiva.locale.pt-BR.yaml

The version number needs to be updated in all manifest files.


[ENH] Slim version of the debug widget

Motivation - Slim version of the debug widget. Some options are not needed and should be changed only in one version of the frontend.
Specification - Either remove some items or remove the widget completely and only show necessary buttons next to the load and store button? (import/export/delete bot model). The meta-model should be connected to the SBF version. So we do not want an import meta-model function for end-users, if they are using another bot version they should stick to the corresponding SBF Frontend version.

The way I implemented it for now is that I have added a new widget on syncmeta and then published it under a new version on npm and then pull that new version in SBF and use the new widget.
I think it would be better to add this widget in the SBF repository and then copy it to the syncmeta folder to overwrite the original debug widget directly.
What do you think @AlexanderNeumann ?

Also there is a bug with the new widget described here

The way I implemented it for now is that I have added a new widget on syncmeta and then published it under a new version on npm and then pull that new version in SBF and use the new widget. I think it would be better to add this widget in the SBF repository and then copy it to the syncmeta folder to overwrite the original debug widget directly. What do you think @AlexanderNeumann ?

I have now implemented it this way. Funnily enough, this also fixes #56

great!


integer division by zero isn't caught

From @bob-carpenter on July 25, 2016 19:39
Summary:
Integer divide by zero throws an uncaught exception.
Description:
Running this crashes RStan:
library(rstan)

mc <- '
parameters {real theta;}
model {
  target += 1/0;
}
'
sm <- stan_model(model_code = mc)
post <- sampling(sm, show_messages = FALSE)

I'm reporting in Stan because in the command refactor, we'll be catching this in Stan itself.
Reproducible Steps:
See above.
Current Output:
Crashes with `Floating point exception: 8
Expected Output:
Informative error message.
Additional Information:
Originally reported by @davharris on RStan tracker in issue https://github.com/stan-dev/rstan/issues/316
Current Version:
v2.10.0
Copied from original issue: stan-dev/stan#1974

The internet is saying check for 0, so that's the fix I'll apply.

On Jul 25, 2016, at 5:57 PM, Bob Carpenter<EMAIL_ADDRESS>wrote:
Overload for int and check for zero in denominator?
Do you know what it does throw? If so, you could catch
and rethrow.

Bob

On Jul 25, 2016, at 5:43 PM, Daniel Lee<EMAIL_ADDRESS>wrote:
The problem is in math:
https://github.com/stan-dev/math/blob/develop/stan/math/prim/scal/fun/divide.hpp#L25
This line has undefined behavior:
return std::div(x, y).quot;
I didn't realize it threw an exception outside of the stdexcept types. Any suggestions on how to fix this call?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub, or mute the thread.

From @bob-carpenter on July 25, 2016 21:57
Overload for int and check for zero in denominator?
Do you know what it does throw?  If so, you could catch
and rethrow.

Bob

On Jul 25, 2016, at 5:43 PM, Daniel Lee<EMAIL_ADDRESS>wrote:
The problem is in math:
https://github.com/stan-dev/math/blob/develop/stan/math/prim/scal/fun/divide.hpp#L25
This line has undefined behavior:
return std::div(x, y).quot;
I didn't realize it threw an exception outside of the stdexcept types. Any suggestions on how to fix this call?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

The problem is in math:
https://github.com/stan-dev/math/blob/develop/stan/math/prim/scal/fun/divide.hpp#L25
This line has undefined behavior:
return std::div(x, y).quot;

I didn't realize it threw an exception outside of the stdexcept types. Any suggestions on how to fix this call?

Why use div(x, y).quot rather than (x / y)?  We don't
need the remainder and I'd think it'd be slower to create
a struct with both and then just pull the quotient out.
And that second y in the domain_error could be replaced
with 0.   Always better to use constants than variables.
inline int divide(const int x, const int y) {
  if (unlikely(y == 0))
    domain_error("divide", "denominator is", y, "");
   return std::div(x, y).quot;
}

I was really just curious.  I can't imagine anything we
do with integer division will make much of a difference
given that it's rare and fast no matter how we do it.

Bob

On Jul 27, 2016, at 10:03 AM, Daniel Lee<EMAIL_ADDRESS>wrote:
Closed #321 via cb2d563.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Honestly, I have no idea why it was implemented this way. I wanted to get a quick fix in, so I left the code and trapped the div by 0.
We could easily replace it.

On Jul 27, 2016, at 6:17 PM, Bob Carpenter<EMAIL_ADDRESS>wrote:
Why use div(x, y).quot rather than (x / y)? We don't
need the remainder and I'd think it'd be slower to create
a struct with both and then just pull the quotient out.
And that second y in the domain_error could be replaced
with 0. Always better to use constants than variables.
inline int divide(const int x, const int y) {
if (unlikely(y == 0))
domain_error("divide", "denominator is", y, "");
return std::div(x, y).quot;
}
I was really just curious. I can't imagine anything we
do with integer division will make much of a difference
given that it's rare and fast no matter how we do it.

Bob

On Jul 27, 2016, at 10:03 AM, Daniel Lee<EMAIL_ADDRESS>wrote:
Closed #321 via cb2d563.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.


TS docs suggest using Redis for K/V and don't link to regular K/V

I went to the JS/TS language guide to write a new Spin app. The KV storage section shows using Redis, but doesn't even say that I can use built-in K/V storage:
https://developer.fermyon.com/spin/javascript-components#storing-data-in-redis-from-jsts-components
It also doesn't indicate that I can use SQL storage.
This leaves the impression that KV and SQL are not supported in TS.

Thanks @technosophos


[zh]: docs/tasks/administer-cluster/kubeadm/ needs to be updated

This is Support
The translation of these pages is out of date and it needs to be updated.
@javadoors has reported this issue  https://github.com/kubernetes/website/pull/33670#discussion_r873435180
./scripts/lsync.sh content/zh/docs/tasks/administer-cluster/kubeadm/
44      31      content/en/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes.md
0       0       content/en/docs/tasks/administer-cluster/kubeadm/_index.md
57      6       content/en/docs/tasks/administer-cluster/kubeadm/kubeadm-certs.md

/assign

/close
Both files are being fixed by #33598


Ruby code sample for jobs

Files under jobs/V3 sample usages for the APIs jobs team provides.
jobs/spec/samples_spec.rb is the test file, verifying the sample files under jobs/V3.

Hi Frank, have you gotten a chance to review this? @frankyn

@frankyn Hi Frank, I made another commit, refactoring the basic_company_sample.rb and basic_job_sample.rb. Could you pls take a look at those two files and provide feedback? If this refactor looks good, I will apply it to all the other files as well. Thanks and regards, Baochan :)

@frankyn Hi Frank, I applied the suggested changes to all the files. Pls take a look and let me know what is missing... (apologize ahead if I forgot something. There are too many changes. I am afraid there must be something I missed even though I did a really careful check before commit)

Hi Ruby-reviewers, we are on the way to the gRPC client library (Veneer).
However, to give our current customer who is using discovery-based library (Apiary) a better experience, we want to provide more code sample in different languages, and that's the reason we have this pull request.
For the new code samples within gRPC, we have already contacted Justin and Yoshi team, and I believe that they are coming soon.

@baochanzheng I want one more pass from @GoogleCloudPlatform/yoshi-ruby, because  I'll be OOO next week. I don't have bandwidth to review it today apologies and I also don't want to leave you waiting.
Summoning: @GoogleCloudPlatform/yoshi-ruby could someone give this one last review. I think it should be close to done, but didn't have time to do one more pass. Thank you in advance!

Hi Frank, I hope you had a wonderful holiday season!
I just noticed the Kokoro CL failure in this pull request. Since they always successed in my local testing,  I suspect it's just timing issue. I tried to fix this issue by adding sleep time to those two failed test, but I don't know how to force run kokoro test to verify my fix. Can you show me how?
Thanks and best,
Baochan


Switch to ESLint commit convention

Description
Right now we're using angular commit's convention which is a bit ambiguous about breaking changes and major releases and it is easy to release a breaking change as a minor release.
I'd suggest to switch to ESLint preset for semantic release which is much simpler as angular's.
Thoughts?

@iiroj thoughts on that?

I don't like the Capitalized tags, and would prefer the actual Conventional Commits preset: https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-conventionalcommits
I think all these presets have the problem where some commit types do not create a release, breaking or not. The ESLint preset would be nice if it also works with lowercased tags.

So wha't the resolution? I really think this is a less problematic convention as the angular's one.

Yeah, I'm fine with the eslint present. We could add commitlint to husky (commit-msg hook) as well.

There's also cz-adapter-eslint for commitizen.

I tried linting on a different project and it never worked well. IMO we should squash commits before merging and a clear convention should help us. Only people
Who can release are able to do that. Also I consider doing conventional commits in a dev branch as a distraction.


Cache dvclive directory

Background from https://github.com/iterative/example-repos-dev/issues/249:

do -o eval for the entire dir

I increasingly feel this would be the best default for dvclive, both with and without pipelines. It requires a DVC remote, but I think it's needed in almost every real scenario, and Git-only workflows are likely not helping with onboarding since I have found most people are confused by the idea of tracking dvclive with Git. Caching all of dvclive simplifies the workflow. Without pipelines, it's easy to log any size files and know that everything logged by dvclive is saved in the same place. With pipelines, it makes the stage definition simple since you just add dvclive as a stage output.
Originally posted by @dberenbaum in https://github.com/iterative/example-repos-dev/issues/249#issuecomment-1707106231

Following #687 and dvclive 3.0 release, it will be possible to dvc add the entire dvclive directory. Steps in this direction can be:

Make the example repos track the entire directory with DVC.
Document this as the recommended pattern.
Have an option to do this automatically in dvclive.
Make it the default behavior in dvclive.

Let's start with 1 and we should start to see if it feels like an improvement, in which case we can move onto the rest of the list. If we find it becomes the recommended pattern, we can make it a default in dvclive 4.0 (similar to the progression of save_dvc_exp).

@shcheklein Let's collect here the issues that we are seeing with this approach so it's easier to evaluate. So far I see:

Requires remote access (including in Studio and CI)
Lack of caching
No badges

TBH it's already enough to at least give me pause. Ideally, I would probably cache plots and artifacts and leave metrics.json and params.yaml to Git, but this feels complicated.

Lack of caching it should be solved by @skshetry already, AFAIU?

Remote access

I think I I agree with you that it's worth it though still. It makes the management of the directory easier.

Badges

Seems minor? (I wish we had them, may be just make a copy of the metrics file in some way)

but this feels complicated.

What do you see here as the main complication? People annoyed by the presence of the eval or dvclive dir? Something else?

What do you see here as the main complication? People annoyed by the presence of the eval or dvclive dir? Something else?

My main concerns are:

Having to explain that different outputs get saved to different places and explaining how to configure this. One of the main benefits of this approach was keeping everything in one place and simplifying the pipeline to a single dvclive output.
Remote access. Something like dvc exp show or the VS Code table will fail to show old commits if remote access isn't available, for example.

Feedback from https://iterativeai.slack.com/archives/C01SR9Q12LB/p1695337625637059:

is logging nicely in studio with dvclive and I am able to monitor the training curves however after running dvc exp push  - it’s due to missing remote - we delete live metrics but metrics from remote are not available yet., Not a smooth experience.

A point in favor of caching the dvclive directory by default: transitioning to caching it later (for example, as a pipeline output) requires running git rm --cached ... to drop it from Git first, introducing potential friction.


maybe can you close finished milestones in github ?

As I was looking for 3.0 features, I noticed this.

Done.
Thank you


Add support to reinstall borked gem, e.g. rmagick, nokogiri

Lots of gems either fail to work (e.g. rmagick) or create a lot of noise (e.g. nokogiri) when the system library has been updated but the gem hasn't been changed, i.e. it's still linking against the old version.
Presently, there is no easy way to fix this without understanding how to use the gem command to uninstall and then reinstall the misbehaving gem.
e.g.
GEM_HOME=./vendor/bundle/ruby/2.3.0/ gem uninstall rmagick
bundle install

It would be nice if there was a flag to bundle install or a bundle reinstall or bundle uninstall command that would assist with this problem. This is definitely affecting users, e.g. http://stackoverflow.com/questions/12188833/how-to-reinstall-a-gem-using-bundler/38038505#38038505

bundle install --force should do just that!

A very easy way to use the gem command is to run bundle exec gem pristine GEMNAME (and we are working on a pristine command for Bundler right now). But bundle install --force should also work!

It's interesting because I tried --force but it still installed the old gem, perhaps from cache, last time I tried.. I'll try again and report back.. not sure fi the issue is closed yet..

% sudo -u http bundle list
...
* nokogiri (<IP_ADDRESS>)
...
% sudo -u http bundle exec rake console
WARNING: Nokogiri was built against LibXML version 2.9.2, but has dynamically loaded 2.9.3
[1] pry(main)>
% sudo -u http bundle install --force
... nokogiri not listed ...
% sudo -u http bundle exec rake console
WARNING: Nokogiri was built against LibXML version 2.9.2, but has dynamically loaded 2.9.3
[1] pry(main)>

Is it possible that bundle install --force is only installing direct dependencies?

Trying to use gem pristine:
% sudo -u http bundle exec gem pristine nokogiri
Restoring gems to pristine condition...
Building native extensions.  This could take a while...
ERROR:  While executing gem ... (Gem::Ext::BuildError)
    ERROR: Failed to build gem native extension.

    current directory: /srv/http/business.geozone.co.nz/vendor/bundle/ruby/2.3.0/gems/nokogiri-<IP_ADDRESS>/ext/nokogiri
/usr/bin/ruby -r ./siteconf20160627-19412-12kb48q.rb extconf.rb
/usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:94:in `block in materialize': Could not find nokogiri-<IP_ADDRESS> in any of the sources (Bundler::GemNotFound)
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:87:in `map!'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/spec_set.rb:87:in `materialize'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/definition.rb:137:in `specs'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/definition.rb:182:in `specs_for'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/definition.rb:171:in `requested_specs'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/environment.rb:18:in `requested_specs'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:13:in `setup'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler.rb:92:in `setup'
	from /usr/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/setup.rb:18:in `<top (required)>'
	from /usr/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'

extconf failed, exit code 1

Gem files will remain installed in /srv/http/business.geozone.co.nz/vendor/bundle/ruby/2.3.0/gems/nokogiri-<IP_ADDRESS> for inspection.
Results logged to /srv/http/business.geozone.co.nz/vendor/bundle/ruby/2.3.0/extensions/x86_64-linux/2.3.0/nokogiri-<IP_ADDRESS>/gem_make.out

% pwd
/srv/http/business.geozone.co.nz/vendor/bundle/ruby/2.3.0/gems
% ls noko*
nokogiri-<IP_ADDRESS>:
appveyor.yml  build_all		   CHANGELOG.ja.rdoc  dependencies.yml	Gemfile  LICENSE.txt   patches	Rakefile   ROADMAP.md		  suppressions	test	  Y_U_NO_GEMSPEC.md
bin	      C_CODING_STYLE.rdoc  CHANGELOG.rdoc     ext		lib	 Manifest.txt  ports	README.md  STANDARD_RESPONSES.md  tasks		test_all

So, it's definitely there..

I've come to the conclusion it's nothing to do with bundler, my apologies. I removed the vendor directory and reinstalled everything.. not change.. something weird in nokogiri?

I had this problem too. bundle exec gem pristine pg gives output just like that with Bundler::GemNotFound.
I resolved it by hard-coding the version of pg in Gemfile then running bundle up pg. I suspect bundle install --force would have worked too.

bundle doctor can now diagnose these issues, for what its worth


Multiple CPIs on a single Director

Yey! I've always waited for this feature. We already work with multiple cloud deployments and it would be really great if BOSH will be able to do it out of the box.

Would this also include multiple instances of the same CPI? A usecase for this could be a HA cloud foundry installation with multiple openstack installations in different datacenters (in the wild I have not yet encountered a lot of private OpenStack installations which use the availability zones properly).

@rkoster sure, but such solution leaves a lot open questions. Currently open source CF is not implied to be deployed to hybrid clouds. First of all because of CC and UAA should use consistent data. We tried to implement hybrid solution with MariaDB in datacenters in different areas of the world: it was pretty hard and the latency was huge. I wouldn't say that current CF deployment to hybrid cloud will be HA. Still the best configuration I see is to use separate CF deployment to each cloud.
But this feature has lots of advantages besides of CF deployment to hybrid cloud.

@rkoster I think that is definitely one of the more useful cases why someone would use multi-CPI Director. I had interesting conversations specifically about OpenStack's use of that. Imho having ability to instantiate CPIs of the same type in the same Director is much more elegant then pushing down that kind of logic into the CPI itself.

With recent changes to how we deploy CPIs (collocated with the Director) I could see us taking a more dynamic approach to configuring CPIs -- may be via cloud-config?

Yes, cloud-config is a good option here. It allows to enable storing credentials for different clouds with little code changes.
Still running BOSH outside of the private network, where Job VM are placed, requires sharing several BOSH components with newly created Job VMs:

blobstore - for storing compiled packages;
NATS messaging bus - for communication between bosh-agent and bosh-director;

In my test deployment I created VPN connection between MicroBOSH instance and private network in external cloud. The fact that I had only one IP address for NATS and DAV blobstore made it easy to update manually CPI config to make bosh-agent think of VPN server as MicroBOSH instance. Still in case of BOSH cluster the task of sharing this resources could be more complex.
What do you think about the problem of sharing this resources across different networks?

Closing - this discussion and notes were migrated into multi-cpi.md. Currently, shared components like blobstore/nats must be accessible from each network, although there's no technical need for entire networks to be fully routable between each other.


Suppress python connector output to support proper json formatting

Pre-review checklist

[ ] I've confirmed that instructions included in README.md are still correct after my changes in the codebase.
[ ] I've added new automated tests to verify correctness of my new code.
[ ] I've confirmed that my changes are up-to-date with the target branch.
[ ] I've described my changes in the release notes.
[ ] I've described my changes in the section below.

Changes description
...

Closes #455


FEATURE: Automatically handle OPTIONS requests

New approach:

OPTIONS routes are created on the fly as needed (and discarded), so we no longer have a conflict with individual Options handlers.
There is a generic RootRouter.optionsHandler that you can override if you want to set other headers.
Unfortunately, the method to set the options handler has to be OptionsHandler() rather than just Options() (to match NotFound()) since the latter name is already taken by the http verb.
We could potentially add OPTIONS routes to the routes tree once they are called the first time, but I opted not to do this.

@cypriss I'm pretty happy with this. Any thoughts?

@austintaylor lgtm. Does it need an update to the README?


Remove Time/FileData functionality

Not sure this needs to be provided in vivarni.domain.
Thoughts on whether or not we should remove this from the current repository/nuget package?

Fixed with b6317ca40582e627f2ed634126c1f75744a426f0


Ready for usage?

Hey @kbussell do you consider this ready for production usage yet?
Thanks in advance

@aericson, I added more tests and am now building in various configurations. It should be working and stable. Check it out and let me know how it goes!


slices: update Int.Scan() to parse empty slices

Previously, Int.Scan() returned the non-empty slice '[0]' when reading an empty slice of ints from the database. This is a bug, as the output should also be empty. This patch fixes the bug and adds regression tests. Additionally, the code is updated to percolate up the errors from integer to string conversion, which was previously swallowed.

It seems like this PR is related to #788

Thanks!


Alt text not included alongside certain images

End user report from Japanese book. Can reproduce.

The issue is that the images are child elements of the par's target text src, e.g.


Database connection [central] not configured

Can't seed or run, getting following error:
InvalidArgumentException
Database connection [central] not configured.

PHP 8.0.11
Laravel 9.52.4

The error "InvalidArgumentException Database connection [central] not configured" in Laravel indicates that the "central" database connection is not configured correctly. This can happen if the connection is not defined in the config/database.php file or if the configuration is incorrect. To fix the error, you can follow these steps:
Check if the "central" connection is defined in the config/database.php file. Make sure the connection name is correct and the host, database name, username, and password settings are correct.
Make sure the "central" connection is being used correctly in your code. Check if the connection name is correct and if you are using the correct connection in your code.
Check if the config/database.php file is being loaded correctly in your application. Make sure the file exists and is being loaded correctly in your application.
Try clearing the Laravel cache by running the php artisan cache:clear command. This can help resolve cache issues that may be causing the error.
Check if the "central" database is accessible and the connection credentials are correct. Try connecting to the database using the same connection credentials in a database client, such as MySQL Workbench, to verify if the connection is working correctly.

If the error persists, check for other errors or log messages that may help identify the problem.


Code cleanup

This includes my two other PRs: #15 & #16

I will open more PRs in the future to improve gradle-java-modules, but I want to ensure that my existing changes are accepted first since my later PRs will depend on these earlier ones.  To see my future PRs, look at the branches in my fork.


Missing parenthesis in pseudocode hash

(a ** string_len - (i+1)) * char_code(string[i])
is evaluated as (i+1) less than a to the power of string_len, due to the order of operations of arithmetic.
It would be clearer if you rewrote the pseudo code as:
(a ** (string_len - (i+1))) * char_code(string[i]). I believe this makes is it clear that you are raising a to the sum of -(i+1) and string_len.

Thanks for pointing this out @balasuar - a PR from @medium-endian has fixed it. Thanks all!


Component for PWA update notification

Create a component to be used in all the apps for showing PWA update notification.

Done via #232


Access parent dispatch/navigate/onBack/etc

Can we get access to the global dispatch/nagivate/etc functions, so that we don't have to pass them through our component trees?

Probably we could provide an HOC like ex-navigation did. @ericvicenti is there a reason we don't do this?

No reason, it just hasn't come up yet. All we need to do is modify SceneView to provide the navigation prop via context, then add a simple HOC to pull it out of context.
The hardest part about this is deciding on the name of the HOC, and docs.

@ericvicenti ex-navigation use withNavigation, so maybe we can steal that name?


Fix argMax & argMin benchmarks

Description
The reduction op benchmarks operate on a 2D tensor and expect a scalar response.  However, argMax and argMIn reduce rank by only one dimension at a time.  This fix simply applies these ops twice in a row in order to produce a scalar.
It may seem a little weird that we'll now measure time for two calls instead of one, but I think that's OK.

it doesn't matter as long as we consider this a relative measure,
this makes the measurement more comparable to the other reduction ops, which are reducing over both dimensions here, and
the time is likely dominated by the first call anyway.

Fixes tensorflow/tfjs#504
BUG

For repository owners only:
Please remember to apply all applicable tags to your pull request.
Tags: FEATURE, BREAKING, BUG, PERF, DEV, DOC, SECURITY
For more info see: https://github.com/tensorflow/tfjs/blob/master/DEVELOPMENT.md

This change is

Hmm -- just curious, what is the motivation for this change?

The motivation came from the linked bug.  Running the benchmark on argMin or argMax currently crashes with Error: Number of coordinates in get() must match the rank of the tensor, because reduction_ops_benchmark:50 has op(input).get();, which only works if op(input) is a scalar.
Sure we could split the test into two (one for to-scalar reducers and one for to-rank-minus-one reducers), but this solution seemed more expedient.

How about instead we just call ".data()" for reduction ops?

Or, actually even better, call reduction ops on a vector instead of matrix?

Oops, sorry I lost track of this.  Implemented the 1D approach.


[Broker] Backlog Quota not properly fetched for message_age BacklogQuotaType

Describe the bug
pr https://github.com/apache/pulsar/pull/10093 introduced time based backlog and new BacklogQuotaType message_age.
While we can use admin cli to set backlog limit for message_age type, when fetching backlog https://github.com/apache/pulsar/blob/5ad405988fabb4b28dbdbd5aa5c9a10802f39af1/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/BacklogQuotaManager.java#L73-L91, by default we only fetch for destination_storage type, so we set backlog to message_age type but when checking backlog we're not checking against limit we set for time based quota.

plz assign to me

plz assign to me

sure


side_by_side_running: optimize & fix

Optimized perf (setInterval -> Observer)
Only run on athlete's profile
Only click once

According to feature screenshot, when this feature was originally done, there were just Running & Cycling tabs. Nowadays there is also Swimming, so .running-tab button was in DOM two times, so the click happened twice. UI was not broken, as both clicks showed Running tab, but nonetheless the click handler happened twice.

Hopefully understandable comments :D

Tested:

Athlete with default running tab,
Athlete with default cycling tab
Switching tabs on athlete page (Overview, Trophies, Following, ...)
Changing comparison tabs

Released in 2.16.0, pending review by the Google overlords.. :+1:


[BUG]: sqlite column definition typescript argument mismatch

Report hasn't been filed before.

[X] I have verified that the bug I'm about to report hasn't been filed before.

What version of drizzle-orm are you using?
0.33.0
What version of drizzle-kit are you using?
0.22.8
Other packages

Describe the Bug
While defining sqlite columns using your examples in the documentation
import { integer, sqliteTable } from "drizzle-orm/sqlite-core";

const contentFrame = sqliteTable('contentFrame', {
	id: integer({ mode: 'number' }).primaryKey({ autoIncrement: true })
});

typescript errors with typescript: Argument of type '{ mode: string; }' is not assignable to parameter of type 'string'. [2345].
Likewise npx drizzle-kit push errors with
npx drizzle-kit push
drizzle-kit: v0.22.8
drizzle-orm: v0.33.0

_ZodError: [
  {
    "code": "invalid_type",
    "expected": "string",
    "received": "object",
    "path": [
      "tables",
      "table",
      "columns",
      "[object Object]",
      "name"
    ],
    "message": "Expected string, received object"
  }
]                                                                                at get error [as error] (/XXX/node_modules/drizzle-kit/bin.cjs:5183:
28)
    at _ZodObject.parse (/XXX/node_modules/drizzle-kit/bin.cjs:5263:22)     at prepareSQLitePush (/XXX/node_modules/drizzle-kit/bin.cjs:30542:41
)                                                                                at async sqlitePush (/XXX/node_modules/drizzle-kit/bin.cjs:122578:26
)                                                                                at async _Command.<anonymous> (/XXX/node_modules/drizzle-kit/bin.cjs
:129691:7) {
  issues: [
    {
      code: 'invalid_type',
      expected: 'string',
      received: 'object',
      path: [Array],
      message: 'Expected string, received object'
    }
  ],
  addIssue: [Function (anonymous)],
  addIssues: [Function (anonymous)],
  errors: [
    {
      code: 'invalid_type',
      expected: 'string',
      received: 'object',
      path: [Array],
      message: 'Expected string, received object'
    }
  ]
}

better-sqlite3, monorepo,  typescript v5.6.3, nodejs,
tsconfig.json:
{
	"extends": "./.svelte-kit/tsconfig.json",
	"compilerOptions": {
		"allowJs": true,
		"checkJs": true,
		"esModuleInterop": true,
		"forceConsistentCasingInFileNames": true,
		"resolveJsonModule": true,
		"skipLibCheck": true,
		"sourceMap": true,
		"strict": true,
		"moduleResolution": "bundler"
	}
	// Path aliases are handled by https://svelte.dev/docs/kit/configuration#alias
	// except $lib which is handled by https://svelte.dev/docs/kit/configuration#files
	//
	// If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes
	// from the referenced tsconfig.json - TypeScript does not merge them in
}

This feature was introduced in Drizzle ORM 0.34.0. You have to upgrade both ORM and Kit.


fix impl ZstdDecompressor

Proposed changes

Impl ZstdDecompressor and support read hive text table which is compressed by zstd.

run buildall

run buildall

run buildall

run buildall


Add note to usage section

This note helps v11 users adjust the example script to get it working.

Thanks!