Sachverhalt und Erwägungen:
Sachverhalt und Erwägungen:
1. B._ (Klägerin) war bei der A._ AG (Beklagte) in deren Boutique X._ als Verkäuferin angestellt. Im Jahre 2003 kam es zu Auseinandersetzungen zwischen der Klägerin und einer weiteren Angestellten, weil diese sich auf ein Verhältnis mit dem Ehemann der Klägerin eingelassen hatte. Die Beklagte kündigte das Arbeitsverhältnis mit der Klägerin am 27. März 2003 auf den 31. Mai 2003. Am 1. April 2003 reichte die Klägerin ein Arztzeugnis ein, welches ihr ab dem 31. März 2003 eine hundertprozentige Arbeitsunfähigkeit für 6 Tage bescheinigte. Mit Schreiben vom 2. April 2003 forderte die Beklagte die Klägerin auf, entweder am 4. April 2003 zur Arbeit zu erscheinen oder den Vertrauensarzt der Firma aufzusuchen. Die Klägerin leistete dieser Aufforderung in keiner Weise Folge. Hierauf kündigte die Beklagte mit eingeschriebenem Brief vom 4. April 2003 das Arbeitsverhältnis fristlos.
Die Klägerin belangte die Beklagte am 13. April 2003 vor Arbeitsgericht Olten-Gösgen. Sie hielt die ordentliche Kündigung wegen Krankheit für nichtig, die fristlose für unbegründet. Ferner verlangte sie die Ausstellung eines seriösen Arbeitszeugnisses, den Lohn bis zum tatsächlichen Vertragsende sowie eine Genugtuung wegen übler Verleumdung. Die öffentliche Arbeitslosenkasse des Kantons Aargau trat dem Verfahren als Streitgenossin bei. Das Arbeitsgericht verpflichtete die Beklagte am 8. Dezember 2003, der Arbeitslosenkasse und der Klägerin je Fr. 2'071.15 bzw. Fr. 5'184.20 brutto zu bezahlen. Zudem wurde die Beklagte verpflichtet, der Klägerin ein Arbeitszeugnis folgenden Wortlauts auszustellen:
"Arbeitszeugnis
B._ war als Modeberaterin vom August 1996 bis April 1998 und dann von August 1998 bis April 2003 in unserem X._-Shop, Mode für Frauen und Männer, tätig. B._ erledigte folgende Arbeiten:
- Verkauf
- Warenpräsentation
- Warenauszeichnung und -kontrolle
- Mitwirken im Einkauf
- Instandhaltung und Reinigung des Ladens
- kleine, administrative Arbeiten
Wir lernten B._ als charmante, tüchtige und selbstbewusste Person kennen. In der Beratung unserer Kunden war sie unübertrefflich. Mit ihrem modischen Flair und der Fähigkeit für jeden Kunden das perfekte Outfit zusammenzustellen, erwarb sie sich in kurzer Zeit eine grosse und zufriedene Stammkundschaft.
Gegenüber Vorgesetzten war sie immer korrekt.
Wir wünschen B._ für die Zukunft weiterhin viel Glück und Erfolg und alles Gute in ihrem weiteren Berufs- und Lebensweg.
Ganz herzlichen Dank für ihren geleisteten Einsatz!"
Ganz herzlichen Dank für ihren geleisteten Einsatz!"
2. Mit kantonaler Nichtigkeitsbeschwerde beantragte die Beklagte dem Obergericht des Kantons Solothurn, das Urteil vom 8. Dezember 2003 aufzuheben und sämtliche klägerische Begehren kostenfällig abzuweisen. Mit Urteil vom 29. Juli 2004 wurde die Nichtigkeitsbeschwerde abgewiesen.
2. Mit kantonaler Nichtigkeitsbeschwerde beantragte die Beklagte dem Obergericht des Kantons Solothurn, das Urteil vom 8. Dezember 2003 aufzuheben und sämtliche klägerische Begehren kostenfällig abzuweisen. Mit Urteil vom 29. Juli 2004 wurde die Nichtigkeitsbeschwerde abgewiesen.
3. Die Beklagte führt eidgenössische Berufung. Sie beantragt dem Bundesgericht, das Urteil des Obergerichts aufzuheben und die Sache zur Neubeurteilung im Sinne der Erwägungen an die Vorinstanz zurückzuweisen. Die Klägerin schliesst auf Abweisung der Berufung, eventuell auf Nichteintreten. Die Arbeitslosenkasse stellt den Antrag, das angefochtene Urteil vollumfänglich zu bestätigen. Im Übrigen verzichtet sie auf eine Stellungnahme.
3. Die Beklagte führt eidgenössische Berufung. Sie beantragt dem Bundesgericht, das Urteil des Obergerichts aufzuheben und die Sache zur Neubeurteilung im Sinne der Erwägungen an die Vorinstanz zurückzuweisen. Die Klägerin schliesst auf Abweisung der Berufung, eventuell auf Nichteintreten. Die Arbeitslosenkasse stellt den Antrag, das angefochtene Urteil vollumfänglich zu bestätigen. Im Übrigen verzichtet sie auf eine Stellungnahme.
4. Gemäss Art. 46 OG ist die Berufung nur zulässig, wenn der Streitwert nach Massgabe der Rechtsbegehren, wie sie vor der letzten kantonalen Instanz noch streitig waren, wenigstens Fr. 8'000.-- beträgt. Der Streitwert für das Berufungsverfahren bemisst sich nach dem Interesse, das für die Parteien unmittelbar vor der angefochtenen kantonalen Entscheidung auf dem Spiele stand (<ref-ruling> E. 1).
4. Gemäss Art. 46 OG ist die Berufung nur zulässig, wenn der Streitwert nach Massgabe der Rechtsbegehren, wie sie vor der letzten kantonalen Instanz noch streitig waren, wenigstens Fr. 8'000.-- beträgt. Der Streitwert für das Berufungsverfahren bemisst sich nach dem Interesse, das für die Parteien unmittelbar vor der angefochtenen kantonalen Entscheidung auf dem Spiele stand (<ref-ruling> E. 1).
5. Mit Bezug auf den massgeblichen Streitwert bringt die Beklagte in der Berufung vor, im Verfahren vor dem Obergericht seien zum einen Fr. 7'255.35 brutto und zum anderen die Formulierung des Arbeitszeugnisses streitig gewesen. Die Klägerin habe vor Arbeitsgericht unter anderem die Formulierung verlangt: "Gegenüber Vorgesetzten und Mitarbeitern war sie immer korrekt.". Diese Aussage habe nicht lediglich einen unbedeutenden Bereich, sondern eine fundamentale Kernaussage über wichtige Verhaltensweisen und Charaktereigenschaften der Klägerin betroffen. Die Beklagte habe im erstinstanzlichen Verfahren erläutert, weshalb dieser Satz nicht im Arbeitszeugnis stehen dürfe. Ihrer Meinung nach rechtfertigt es sich daher, den Wert des Arbeitszeugnisses mit einem monatlichen Bruttolohn einschliesslich des Anteils am 13. Monatslohn, also mit Fr. 3'740.-- einzusetzen.
5. Mit Bezug auf den massgeblichen Streitwert bringt die Beklagte in der Berufung vor, im Verfahren vor dem Obergericht seien zum einen Fr. 7'255.35 brutto und zum anderen die Formulierung des Arbeitszeugnisses streitig gewesen. Die Klägerin habe vor Arbeitsgericht unter anderem die Formulierung verlangt: "Gegenüber Vorgesetzten und Mitarbeitern war sie immer korrekt.". Diese Aussage habe nicht lediglich einen unbedeutenden Bereich, sondern eine fundamentale Kernaussage über wichtige Verhaltensweisen und Charaktereigenschaften der Klägerin betroffen. Die Beklagte habe im erstinstanzlichen Verfahren erläutert, weshalb dieser Satz nicht im Arbeitszeugnis stehen dürfe. Ihrer Meinung nach rechtfertigt es sich daher, den Wert des Arbeitszeugnisses mit einem monatlichen Bruttolohn einschliesslich des Anteils am 13. Monatslohn, also mit Fr. 3'740.-- einzusetzen.
6. Richtig ist, dass Streitigkeiten betreffend die Ausstellung oder Formulierung von Arbeitszeugnissen nach Lehre und Rechtsprechung vermögensrechtlicher Natur sind, wobei bezüglich der Streitwerthöhe in erster Linie auf die übereinstimmenden Angaben der Parteien abgestellt wird (<ref-ruling> E. 2b mit Hinweisen). Nicht zu hören ist die Beklagte indessen, soweit sie sich für ihren sinngemäss eingenommenen Standpunkt, wonach sich der Streitwert nach der vor erster Instanz eingeklagten Forderung richtet und spätere Reduktionen daran nichts mehr ändern können, auf die gefestigte Lehre und Rechtsprechung zu <ref-law> beruft. Der im Sinne von <ref-law> massgebliche Streitwert ist nämlich lediglich in Bezug auf die in <ref-law> zwingend vorgesehenen Verfahrensgrundsätze massgebend. Zur Bestimmung der sachlichen Zuständigkeit, der zulässigen Rechtsmittel oder anderer von <ref-law> nicht erfasster Gegenstände dürfen die einschlägigen Prozessordnungen eine andere Art der Streitwertberechnung vorschreiben (Rehbinder/Portmann, Basler Kommentar, 3. Aufl., N. 13 zu <ref-law>). Entgegen der Auffassung der Beklagten sind demnach im Hinblick auf Art. 46 OG sämtliche Änderungen des Streitgegenstandes im Laufe des kantonalen Verfahrens bis zum Zeitpunkt, in welchem das Urteil der letzten kantonalen Instanz ergeht, zu beachten (Poudret, Commentaire de la loi fédérale d'organisation judiciaire, N. 1.5 zu Art. 46 OG, S. 239, mit Hinweisen).
Wie die Beklagte selbst einräumt, ist der für die Berufung erforderliche Streitwert von Fr. 8'000.-- nicht erreicht, sofern ausschliesslich auf die klar bezifferten Forderungen abgestellt wird, wie sie vor Obergericht noch streitig waren. Das Obergericht hat im angefochtenen Urteil die Frage der Formulierung des Arbeitszeugnisses nicht thematisiert. Die Beklagte legt nicht dar, dass sie vor dem Obergericht einen Antrag auf diesbezügliche Änderungen des erstinstanzlichen Urteils gestellt hätte. Dem erstinstanzlichen Urteil ist im Übrigen zu entnehmen, dass der eingereichte Entwurf des Arbeitszeugnisses, soweit die Arbeitsleistungen betreffend, unbestritten war, und dass das Arbeitsgericht den Zeugnisentwurf, was das Verhalten der Klägerin gegenüber ihren Mitarbeitern anbelangt, entsprechend dem Begehren der Beklagten angepasst hat. Vor diesem Hintergrund ist nicht ersichtlich, inwiefern die Beklagte insoweit noch beschwert und zur Ergreifung eines Rechtsmittels legitimiert hätte sein können. Da feststeht, dass sich die Klägerin mit dem erstinstanzlichen Urteil abgefunden hat, ist ihr beizupflichten, wenn sie in der Berufungsantwort darlegt, die Formulierung des Leistungszeugnisses sei jedenfalls vor Obergericht nicht mehr streitig gewesen. Unter diesen Umständen ist davon auszugehen, dass der Streitwert nach Massgabe der Rechtsbegehren, wie sie vor der letzten kantonalen Instanz noch streitig waren, Fr. 8'000.-- nicht erreicht. Auf die Berufung ist deshalb nicht einzutreten.
Wie die Beklagte selbst einräumt, ist der für die Berufung erforderliche Streitwert von Fr. 8'000.-- nicht erreicht, sofern ausschliesslich auf die klar bezifferten Forderungen abgestellt wird, wie sie vor Obergericht noch streitig waren. Das Obergericht hat im angefochtenen Urteil die Frage der Formulierung des Arbeitszeugnisses nicht thematisiert. Die Beklagte legt nicht dar, dass sie vor dem Obergericht einen Antrag auf diesbezügliche Änderungen des erstinstanzlichen Urteils gestellt hätte. Dem erstinstanzlichen Urteil ist im Übrigen zu entnehmen, dass der eingereichte Entwurf des Arbeitszeugnisses, soweit die Arbeitsleistungen betreffend, unbestritten war, und dass das Arbeitsgericht den Zeugnisentwurf, was das Verhalten der Klägerin gegenüber ihren Mitarbeitern anbelangt, entsprechend dem Begehren der Beklagten angepasst hat. Vor diesem Hintergrund ist nicht ersichtlich, inwiefern die Beklagte insoweit noch beschwert und zur Ergreifung eines Rechtsmittels legitimiert hätte sein können. Da feststeht, dass sich die Klägerin mit dem erstinstanzlichen Urteil abgefunden hat, ist ihr beizupflichten, wenn sie in der Berufungsantwort darlegt, die Formulierung des Leistungszeugnisses sei jedenfalls vor Obergericht nicht mehr streitig gewesen. Unter diesen Umständen ist davon auszugehen, dass der Streitwert nach Massgabe der Rechtsbegehren, wie sie vor der letzten kantonalen Instanz noch streitig waren, Fr. 8'000.-- nicht erreicht. Auf die Berufung ist deshalb nicht einzutreten.
7. Gerichtskosten sind nicht zu erheben (<ref-law>). Hingegen hat die im bundesgerichtlichen Verfahren unterliegende Beklagte der Klägerin eine Parteientschädigung zu zahlen (Art. 159 Abs. 1 und 2 OG; <ref-ruling> E. 5c S. 42 mit Hinweis). Die nicht anwaltlich vertretene Arbeitslosenkasse kann dagegen keine Entschädigung beanspruchen.

Demnach erkennt das Bundesgericht
im Verfahren nach Art. 36a OG:
im Verfahren nach Art. 36a OG:
1. Auf die Berufung wird nicht eingetreten.
1. Auf die Berufung wird nicht eingetreten.
2. Es wird keine Gerichtsgebühr erhoben.
2. Es wird keine Gerichtsgebühr erhoben.
3. Die Beklagte hat die Klägerin für das bundesgerichtliche Verfahren mit Fr. 2'500.-- zu entschädigen.
3. Die Beklagte hat die Klägerin für das bundesgerichtliche Verfahren mit Fr. 2'500.-- zu entschädigen.
4. Dieses Urteil wird den Parteien, der Öffentlichen Arbeitslosenkasse des Kantons Aargau und dem Obergericht, Zivilkammer, des Kantons Solothurn schriftlich mitgeteilt.
Lausanne, 5. November 2004
Im Namen der I. Zivilabteilung
des Schweizerischen Bundesgerichts
Der Präsident: Der Gerichtsschreiber: