Skip to content

Commit acbfb67

Browse files
authored
Merge pull request #30 from kakeruzoku/dev
1.3.1
2 parents d7581cc + ce2b149 commit acbfb67

File tree

8 files changed

+30
-10
lines changed

8 files changed

+30
-10
lines changed

.github/workflows/main.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
name: Publish Python 🐍 distributions 📦 to PyPI
22

33
on:
4+
release:
5+
types: [created]
46
workflow_dispatch:
57

68
jobs:

docs/ja/cloud.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,8 @@ Scratchでのクラウド変数を表します。`_BaseCloud`を継承してい
118118

119119
### event
120120

121+
ここでの引数`cloud_activity``CloudActivity`です。
122+
121123
> on_ready()
122124
123125
クラウドに接続して接続が完了した
@@ -135,9 +137,6 @@ Scratchでのクラウド変数を表します。`_BaseCloud`を継承してい
135137

136138
> on_set(cloud_activity)
137139
138-
**出力**
139-
- **cloud_activity** (`CloudActivity`)
140-
141140
値が変更された時
142141

143142
- **`1.1.0`で更新** データが`CloudActivity`でまとまって出力されるようになりました。
@@ -159,6 +158,13 @@ Scratchのクラウド変数ログAPIを使用したイベント。`_BaseEvent`
159158
160159
### event
161160

161+
ここでの引数`cloud_activity``CloudActivity`です。
162+
163+
通常のイベントとの違い
164+
165+
- 変数を変更したユーザーを取得可能
166+
- `on_create` `on_rename` `on_del` が利用可能
167+
162168
> on_ready()
163169
164170
> on_set(cloud_activity)

docs/ja/update.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
Scapiの更新履歴です。1.0.0以前の更新履歴は[こちら](https://github.com/kakeruzoku/scapi/blob/main/changelog.md )
44

55
# 1.x.x
6+
## 1.3.1
7+
### 更新/修正
8+
- [PR29](https://github.com/kakeruzoku/scapi/pull/29 ) イベントで、時間のずれによる問題を解消
9+
- cookieに必要ない情報を削除
10+
611
## 1.3.0
712
### 新機能
813
- Scratchのクラウド変数接続サポート

scapi/cloud/cloud_event.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,13 @@ def __init__(self,project_id:int,ClientSession:common.ClientSession|None=None,in
5757
super().__init__(interval)
5858
self.project_id:int = project_id
5959
self.ClientSession:common.ClientSession = common.create_ClientSession(ClientSession)
60-
self.lastest_dt = datetime.datetime.now(tz=datetime.timezone.utc)
60+
self.lastest_dt:datetime.datetime = datetime.datetime(2000,1,1,tzinfo=datetime.timezone.utc)
6161
self.Session:"session.Session|None" = None
6262

6363
async def _event_monitoring(self):
64+
logs = [log async for log in self._get_logs(limit=1)]
65+
if logs: # ログが存在する場合のみ処理
66+
self.lastest_dt = logs[0].datetime
6467
self._call_event("on_ready")
6568
while self._running:
6669
try:
@@ -84,4 +87,4 @@ def _get_logs(self,limit:int=100,offset:int=0) -> AsyncGenerator[activity.CloudA
8487
None,activity.CloudActivity,self.Session,
8588
limit=limit,offset=offset,max_limit=100,add_params={"projectid":self.project_id},
8689
custom_func=base._cloud_activity_iterator_func,others={"project_id":self.project_id}
87-
)
90+
)

scapi/event/comment.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,13 @@ def __str__(self) -> str:
1515

1616
def __init__(self,place:project.Project|studio.Studio|user.User,interval):
1717
self.place = place
18-
self.lastest_comment_dt = datetime.datetime.now(tz=datetime.timezone.utc)
18+
self.lastest_comment_dt:datetime.datetime = datetime.datetime(2000,1,1,tzinfo=datetime.timezone.utc)
1919
super().__init__(interval)
2020

2121
async def _event_monitoring(self):
22+
comments = [comment async for comment in self.place.get_comments()]
23+
if comments: # コメントが存在する場合のみ処理
24+
self.lastest_comment_dt = comments[0].sent_dt
2225
self._call_event("on_ready")
2326
while self._running:
2427
try:

scapi/event/message.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,13 @@ def __str__(self) -> str:
4040

4141
def __init__(self,sessions:"Session",interval):
4242
self.session:"Session" = sessions
43-
self.lastest_dt:datetime.datetime = datetime.datetime.now(tz=datetime.timezone.utc)
43+
self.lastest_dt:datetime.datetime = datetime.datetime(2000,1,1,tzinfo=datetime.timezone.utc)
4444
super().__init__(interval)
4545

4646
async def _event_monitoring(self):
47+
messages = [message async for message in self.session.message()]
48+
if messages:
49+
self.lastest_dt = messages[0].datetime
4750
self._call_event("on_ready")
4851
while self._running:
4952
try:

scapi/others/common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
if TYPE_CHECKING:
1616
from ..sites import session
1717

18-
__version__ = "1.3.0"
18+
__version__ = "1.3.1"
1919

2020
headers = {
2121
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36",

scapi/sites/session.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,8 +87,6 @@ def __init__(
8787
"scratchsessionsid" : session_id,
8888
"scratchcsrftoken" : "a",
8989
"scratchlanguage" : "en",
90-
"accept": "application/json",
91-
"Content-Type": "application/json",
9290
}
9391
self.status:SessionStatus = None
9492
self.session_id:str = session_id

0 commit comments

Comments
 (0)