সংস্করণ ৪.০.০ থেকে, Go-এর জন্য Firebase Admin SDK তে Go মডিউল অন্তর্ভুক্ত করা হয়েছে। এছাড়াও, ত্রুটি পরিচালনা (error handling) এবং শব্দার্থবিদ্যায় (semantics) কিছু বড় ধরনের পরিবর্তন (breaking changes) আনা হয়েছে।
ইনস্টলেশন পরিবর্তন
মডিউলের সর্বোত্তম অনুশীলন অনুসরণ করে, SDK-এর প্রধান সংস্করণটি প্যাকেজ নামের সাথে যুক্ত করা হয়েছে। এই পরিবর্তনের ফলে প্যাকেজ নামে নিম্নলিখিত পরিবর্তনগুলো এসেছে:
- firebase.google.com/go → firebase.google.com/go/v4
- firebase.google.com/go/auth → firebase.google.com/go/v4/auth
- firebase.google.com/go/db → firebase.google.com/go/v4/db
- firebase.google.com/go/iid → firebase.google.com/go/v4/iid
- firebase.google.com/go/messaging → firebase.google.com/go/v4/messaging
ডেভেলপাররা ইতিমধ্যে মডিউল ব্যবহার করছেন
SDK-এর সর্বশেষ সংস্করণ ইনস্টল করতে সংস্করণযুক্ত প্যাকেজের নামটি ব্যবহার করুন।
# Install the latest version:
go install firebase.google.com/go/v4@latest
# Or install a specific version:
go install firebase.google.com/go/v4@4.20.0
এসডিকে ইম্পোর্ট করার সময় সোর্স কোডে অবশ্যই একই ভার্সনের প্যাকেজ নামটি ব্যবহার করতে হবে।
package helloworld
import (
"firebase.google.com/go/v4"
"firebase.google.com/go/v4/auth"
"firebase.google.com/go/v4/messaging"
)
পূর্ববর্তী সংস্করণ ইনস্টল করতে, সুস্পষ্ট সংস্করণ নির্দেশকসহ পুরানো (সংস্করণবিহীন) প্যাকেজের নামটি ব্যবহার করুন।
# Notice the @v3 suffix.
# This instructs Go tools to fetch the latest v3.x release of the SDK.
go get firebase.google.com/go@v3
ডেভেলপাররা বর্তমানে মডিউল ব্যবহার করছেন না
যেসব ডেভেলপার এখনো মডিউল অন্তর্ভুক্ত করেননি, তারা সংস্করণবিহীন প্যাকেজের নামটি ব্যবহার করে এসডিকে ইনস্টল করা চালিয়ে যেতে পারেন।
go get firebase.google.com/go
তবে মনে রাখবেন, এটি SDK-এর সর্বশেষ সংস্করণ (v4 বা তার পরবর্তী) নিয়ে আসে, যেটিতে অন্যান্য বড় ধরনের API পরিবর্তন রয়েছে।
সাধারণ ত্রুটি পরিচালনা পরিবর্তন
v4 SDK-তে একটি নতুন errorutils প্যাকেজ চালু করা হয়েছে, যা প্ল্যাটফর্ম-স্তরের ত্রুটি পরিস্থিতি সামলানোর জন্য ফাংশন সরবরাহ করে। যদি কোনো ত্রুটি ব্যাকএন্ড সার্ভিসের ত্রুটির কারণে ঘটে থাকে, তবে আপনি নতুন ফাংশন errorutils.HTTPResponse() কল করে মূল ত্রুটির প্রতিক্রিয়াটি অ্যাক্সেস করতে পারবেন। আপনি SDK-এর যেকোনো API দ্বারা ফেরত আসা ত্রুটির ক্ষেত্রে এই প্যাকেজের ফাংশনগুলো ব্যবহার করতে পারেন।
Authentication এপিআই পরিবর্তন
-
VerifyIDToken()এবংVerifySessionCookie()API-গুলোর সাথে একত্রে ব্যবহারের জন্য নতুন ত্রুটি পরিচালনা ফাংশন যোগ করা হয়েছে:-
IsIDTokenInvalid() -
IsIDTokenExpired() -
IsSessionCookieInvalid() -
IsSessionCookieExpired() -
IsCertificateFetchFailed()
-
- অপ্রচলিত:
-
IsProjectNotFound() -
IsUnknown() -
IsInsufficientPermission() -
IsInvalidEmail()
-
FCM API পরিবর্তন
-
messaging.WebpushFCMOptionsটাইপটির নাম পরিবর্তন করেmessaging.WebpushFcmOptionsরাখা হয়েছে। - যোগ করা হয়েছে:
-
IsThirdPartyAuthError() -
IsQuotaExceeded() -
IsSenderIDMismatch() -
IsUnregistered() -
IsUnavailable()
-
- অপ্রচলিত:
-
IsInvalidAPNSCredentials() -
IsMessageRateExceeded() -
IsMismatchedCredential() -
IsRegistrationTokenNotRegistered() -
IsServerUnavailable() -
IsTooManyTopics() -
IsUnknown()
-
IID API পরিবর্তন
iid প্যাকেজে বর্তমানে উপলব্ধ সমস্ত ত্রুটি পরিচালনা ফাংশন এখন অপ্রচলিত। এর পরিবর্তে errorutils প্যাকেজে প্রদত্ত সংশ্লিষ্ট ত্রুটি পরিচালনা ফাংশনগুলো ব্যবহার করুন।