הבלוג של ארתיום
בלוג על לינוקס, תוכנה חופשית, מוזיקה, סלסה, ומה לא!
שוחררה גרסת 1.48 של Boost שמכילה Boost.Locale
סוף סוף שוחררה גרסה 1.48 של Boost. אחד הדברים המשמעותיים בה היא שילוב של Boost.Locale - ספריית הלוקליזציה שאני פיתחתי.
קישורים:
- אתר הפרויקט: http://www.boost.org
- הודעת שחרור: http://www.boost.org/users/history/version_1_48_0.html
- תיעוד Boost.Locale: http://www.boost.org/libs/locale/index.html
להזכירכם, Boost.Locale פותחה כחלק מפרויקט CppCMS
כמה מטומטם ה־API יכול להיות
היום בניה לילית נתקעה... מכונה וירטואלית של חלונות לא ירדה.
תוך כדי בירור נכנסתי למכונה וגיליתי חלונית עם הודעה בסגנון:
The library e:\mingw\lib\libsqlite3.dll is not valid windows library. Reinstalling
application may solve the problem
אני מכיר את הבעיה שאם אתה מריץ תוכנה שחסר לה dll אז קופצת חלונית. אפשר להבין התנהגות כזו. רק שבמקרה הספציפי הזה: מדובר בטעינה דינאמית של dll עם LoadLibrary...
אני מצפה שפונקציה תחזיר שגיאה ולא תציג חלון! אחרי חיפוש קצר הגעתי לפונקציה SetErrorMode
... שמאפשרת "לפתור" את הבעיה. אבל באמת... אם אין dll אז LoadLibrary יחזיר שגיאה אבל אם ה־dll לא ניתן לטעינה תקפיץ חלון?!?!
מי האידיוט שתכנן את ה־API הזה... בחלום הרע שלי לא הייתי מצפה להתנהגות כזו!
בקיצור: אם אתם לא חייבים אל תפתחו לחלונות!
למה אצלם זה אף פעם לא עובד? או מדוע IIS+FastCGI לא מה שחשבתם...
זה כבר לא בפעם הראש שואלים אותי אם ניתן להריץ את CppCMS עם IIS.
לכאורה, IIS תומך ב־FastCGI וזה הממשק העיקרי של CppCMS, אז לא אמורה להיות כאן בעיה.
אז מה צריך? להגדיר לעבוד בממשק TCP, להגדיר את הפורט שעליו השרת שלי מאזין? נשמע פשוט, אבל זה לא בדיוק עובד.
IIS לא מאפשר להגדיר פורט! הוא לא רק לא תומך בשרתי FastCGI חיצוניים הוא מחייב את השרת להשתמש ב-Socket שהועבר דרך StdIn, רק שבחלונות Stdin הוא לא בדיוק file descriptor וצריך לעשות שמיניות באוויר כדי לקבל ממנו את ה-socket שעליו עושים accept.
אבל, נגיד לא נורא, אז נשתמש ב-socket שקיבלתי מהשרת כמו שזה נעשה בד"כ גם עם שרתים ב-Linux.
זה עדיין לא יעזור! הוא לא יעביר בקשרות לשרת במקביל, הוא פשוט מניח שכל תהליך FastCGI, הוא Single-Threaded ומיועד לטפל בבקשה אחת בו זמנית, כמו ש-PHP עושה.
ראה: http://forums.iis.net/t/1155551.aspx
במילים אחרות גם אם אני אפתור את הבעיה הראשונה (הלא מסובכת) המערכת שלי לא תוכל להנות ממקביליות, משמע אין שיתוף cache, אין תמיכה ב-Comet ועוד.
בקיצור... IIS+FastCGI זה זבל שנכתב במטרה אחת בלבד: להגיד ש־PHP רץ על IIS.
אני הולך לבדוק את ההרחבה isapi_scgi, אם כי אני כבר יודע שהיא לא ממש תומכת ב־SCGI בצורה נכונה כי לא מטפלת ב־Status כראוי.
לכל מחאה יש את העת שלה
אני נהניתי מאוד מאוגוסט פינגווין, העברתי הרצאה, הצגתי פוסטר, קיבלתי המון תגובות החיוביות.
בסה"כ הכנס היה מאוד מוצלח ומהנה, ההרצאה של שחר שמש על תקן המקלדת החדש הייתה מעולה, נהניתי לראות את ההרצאה על הנגשת תקציב המדינה. אבל...
לא הבניתי, מה הקשר בין הכנס התכנה החופשית ועמותת המקור לבין "סדנת פיתוח למחאה החברתית", שבצורה לא ברורה התגנבה יום אחד לפני תחילת הכנס?
עם כל הכבוד לעמותת המקור ולועד המקור (ואני מאוד מכבד העריך את העשיה הרבה) אני לא חושב שהכנסת פוליטקה לכנס שלא קשורה באופן ישיר לקידום תכנה חופשית, תכנים חופשיים היא ראויה.
גם אם אני או חברי העמותה מזדהים או לא מזדהים עם ה"מחאה החברתית" שפקדה את הארץ בשבועות האחרונים, גם אם זה הטרנד היומי הגדול ביותר שאולי מרבית האנשים יכולים להזדהות איתו, אין מקום לפעילות כזו בכנס.
בבקשה, השאירו את הפוליטקה בצד. לכל דבר יש מקום והזמן, גם למחאה מוצדקת או לא.
הפוסטר והמצגת מאוגוסט פינגווין
אני מפרסם כמו שהבטחתי את המצגת והפוסטר מהכנס: