Comments (7)
Full agree with janhartigan
- the google api lib is too large , about 16.8M but i just wanna use the simple function
- the composer update waste much of my time. Here is China, it`s not ~15-30 seconds per composer update, It waste too many minutes per composer update
from google-api-php-client-services.
Would really like to see an update on this.
My composer has to download 7000+ files just for this code here:
// verify validity of token
$client = new Google_Client(array_merge(['jwt' => $jwt], $config));
$payload = $client->verifyIdToken($request->getData('id_token'));
if(!$payload)
return false;
This is quite silly and a MASSIVE overkill just like OP wrote.
from google-api-php-client-services.
This is seriously an embarrassing reality of this repository. Google libraries are usually pretty terrible, tho, so it's not super surprising.
from google-api-php-client-services.
Thank you for voicing your opinions here. I fully agree.
Because Composer requires a repository per package, we'd have to maintain 140+ repositories to allow for each service to be used individually. This is actually not a big deal IMHO, it could be automated and would be well worth the investment ford what we'd gain in usability. But the extra overhead and is why this hasn't been done yet.
from google-api-php-client-services.
@bshaffer you could also look into subtree splits. Considering the number of repositories, it may prove unwieldy, but that way you get a repository per package, but you only have to maintain the main monolithic repo. Laravel does this where the main package is laravel/framework but they have a bunch of subsplits for the various Illuminate subdirectories (https://github.com/illuminate/http for example).
You can see how they used to do this here:
https://github.com/laravel/framework/blob/5.1/build/illuminate-split.sh
And a post about how it is done here:
https://www.tomasvotruba.cz/blog/2017/01/31/how-monolithic-repository-in-open-source-saved-my-laziness/
Sorry for the snarky comment above, but in my experience complaining about things to Google is about as effective as shouting at a hurricane. If you guys don't mind simply having an extra 150 repositories, the extra build legwork by you guys could save everyone who uses this repository roughly ~15-30 seconds per composer update
(depending on machine specs).
from google-api-php-client-services.
More information here about subsplit: https://github.com/dflydev/git-subsplit
from google-api-php-client-services.
Thanks everybody for your input. We are moving newer libraries in this direction as seen in the GCP libraries
Since it is not a change we are going to make to this repo, I am closing this issue.
from google-api-php-client-services.
Related Issues (20)
- \Google\Service\Calendar\Event::getDescription() returns NULL instead of "" HOT 3
- chore: update copyright year
- Slow download time impacting our tests. HOT 2
- HangoutsChat - Cannot add user into a space HOT 2
- composer install fails while trying to download "google/apiclient-services" everytime for the last three weeks (duplicate by mistake)
- composer install fails while trying to download "google/apiclient-services" everytime for the last three weeks HOT 6
- Obtain Domains list HOT 1
- Package is difficult to install HOT 1
- User does not have sufficient permissions for this profile. HOT 2
- Send push notification to multiple device in single request HOT 3
- `ValueRange:getValues()` returns null for empty sheet. HOT 3
- Dynamic property declarations in PHP 8.2 HOT 1
- Method: verificationTokens.generate missing in MyBusinessVerifications HOT 4
- Dynamic property declarations in PHP 8.2 (follow-up) HOT 4
- getResources() now returns null
- Add `@throws \Google\Service\Exception` in method's phpdoc HOT 2
- Safe browsing client refers to non existent v5 version HOT 5
- TransitType enum not generated HOT 4
- Hey, I’ve been working with Swoole and I think there’s an issue when the application runs in a resident memory environment
- Add a script to generate the golden clients from the golden files
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from google-api-php-client-services.